blob: 3b38c038eca6e8c9459694ee29a9050dfef59484 [file] [log] [blame]
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20000802//EN"
"http://www.w3.org/TR/2000/CR-SVG-20000802/DTD/svg-20000802.dtd">
<!-- ========================================================================= -->
<!-- Copyright (C) The Apache Software Foundation. All rights reserved. -->
<!-- -->
<!-- This software is published under the terms of the Apache Software License -->
<!-- version 1.1, a copy of which has been included with this distribution in -->
<!-- the LICENSE file. -->
<!-- ========================================================================= -->
<!-- ========================================================================= -->
<!-- feTile test -->
<!-- -->
<!-- @author vincent.hardy@eng.sun.com -->
<!-- @version $Id$ -->
<!-- ========================================================================= -->
<?xml-stylesheet type="text/css" href="test.css" ?>
<svg id="body" width="450" height="500" viewBox="0 0 450 500">
<title>feTile Test</title>
<!-- ============================================================= -->
<!-- Test content -->
<!-- ============================================================= -->
<g id="testContent" class="legend" style="text-anchor:middle">
<text x="225" y="40" class="title">
feTile Test
</text>
<defs>
<linearGradient id="tileFill" gradientUnits="objectBoundingBox"
x1="0" y1="0" x2="1" y2="1">
<stop offset="0" stop-color="white" />
<stop offset=".5" stop-color="#44ccff" />
<stop offset="1" stop-color="#000033" />
</linearGradient>
<!-- ============================== -->
<!-- Simple tile in top left corner -->
<!-- ============================== -->
<filter id="tile_1" primitiveUnits="objectBoundingBox"
filterUnits="objectBoundingBox"
x="0" y="0" width="200%" height="200%">
<feTile />
</filter>
<!-- =============================== -->
<!-- Tile in center of filter region -->
<!-- =============================== -->
<filter id="tile_2" primitiveUnits="objectBoundingBox"
filterUnits="objectBoundingBox"
x="-50%" y="-50%" width="200%" height="200%">
<feTile />
</filter>
<!-- =============================== -->
<!-- Tile offset in top left corner -->
<!-- =============================== -->
<filter id="tile_3" primitiveUnits="objectBoundingBox"
filterUnits="objectBoundingBox"
x="-25%" y="-25%" width="200%" height="200%">
<feTile />
</filter>
</defs>
<g transform="translate(20, 100)">
<rect x="0" y="0" width="50" height="25" style="fill:url(#tileFill); filter:url(#tile_1)"/>
<rect x="0" y="0" width="100" height="50" style="fill:none; stroke:black;"/>
<text x="50" y="-15">tile_1</text>
<text x="50" y="-3">4 tiles, quarter size</text>
</g>
<g transform="translate(20, 200)">
<rect x="25" y="12.5" width="50" height="25" style="fill:url(#tileFill); filter:url(#tile_2)"/>
<rect x="0" y="0" width="100" height="50" style="fill:none; stroke:black;"/>
<text x="50" y="-15">tile_2 (centered)</text>
<text x="50" y="-3">9 tiles, 1 full, 8 partial</text>
</g>
<g transform="translate(32.5, 307.25)">
<rect x="0" y="0" width="50" height="25" style="fill:url(#tileFill); filter:url(#tile_3)"/>
<rect x="-12.5" y="-7.25" width="100" height="50" style="fill:none; stroke:black;"/>
<text x="37.5" y="-22.25">tile_3 (top left offset)</text>
<text x="37.5" y="-10.25">9 tiles, 1 full, 8 partial</text>
</g>
<g transform="translate(245, 100) skewX(30)">
<rect x="0" y="0" width="50" height="25" style="fill:url(#tileFill); filter:url(#tile_1)"/>
<rect x="0" y="0" width="100" height="50" style="fill:none; stroke:black;"/>
</g>
<g transform="translate(245, 100)">
<text x="50" y="-15">tile_1</text>
<text x="50" y="-3">skewed X</text>
</g>
<g transform="translate(245, 200) translate(50, 30) rotate(20) scale(.7, .7) translate(-50, -25)">
<rect x="25" y="12.5" width="50" height="25" style="fill:url(#tileFill); filter:url(#tile_2)"/>
<rect x="0" y="0" width="100" height="50" style="fill:none; stroke:black;"/>
</g>
<g transform="translate(245, 200)">
<text x="50" y="-15">tile_2</text>
<text x="50" y="-3">(centered, rotate &amp; scale)</text>
</g>
<g transform="translate(257.5, 307.25) translate(-12.5, 0) skewY(15) translate(12.5, 0)">
<rect x="0" y="0" width="50" height="25" style="fill:url(#tileFill); filter:url(#tile_3)"/>
<rect x="-12.5" y="-7.25" width="100" height="50" style="fill:none; stroke:black;"/>
</g>
<g transform="translate(257.5, 307.25) ">
<text x="37.5" y="-22.25">tile_3 (top left offset)</text>
<text x="37.5" y="-10.25">skewed Y</text>
</g>
</g>
<!-- Link to visual reference -->
<a xlink:href="feTileTarget.svg" xlink:show="new">
<text x="20" y="475">How it should look like...</text>
</a>
<!-- ============================================================= -->
<!-- Batik sample mark -->
<!-- ============================================================= -->
<use xlink:href="../batikLogo.svg#Batik_Tag_Box" />
</svg>