| <?xml version="1.0" encoding="UTF-8"?> |
| <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1 Basic//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-basic.dtd"> |
| <!--======================================================================--> |
| <!--= Copyright 2000 World Wide Web Consortium, (Massachusetts =--> |
| <!--= Institute of Technology, Institut National de Recherche en =--> |
| <!--= Informatique et en Automatique, Keio University). All Rights =--> |
| <!--= Reserved. See http://www.w3.org/Consortium/Legal/. =--> |
| <!--======================================================================--> |
| <!-- ===================================================================== --> |
| <!-- rendering-orderGr-BE-01.svg --> |
| <!-- renamed for 1.1 suite to render-groups-01-b.svg --> |
| <!-- Author : Vincent Hardy, 29-Feb-2000 --> |
| <!-- further revisions CL --> |
| <!-- Revised for 1.1 : Phil Armstrong Feb/12/2002 --> |
| <!--======================================================================--> |
| <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="svg-root" baseProfile="basic" width="100%" height="100%" viewBox="0 0 480 360"> |
| <SVGTestCase xmlns="http://www.w3.org/2000/02/svg/testsuite/description/"> |
| <OperatorScript version="$Revision: 1.6 $" testname="render-groups-01-b.svg"> |
| <Paragraph> |
| Verifies implicit rendering order (paragraph 3.3) and grouping mechanism (paragraphs 3.4). |
| It also validates basic Shape, Image and text rendering. |
| </Paragraph> |
| <Paragraph> |
| This test renders 3 elements: a text string "SVG", then |
| a shape, then an image. Because of their definition order and coordinates, the image |
| should be on top of the rectangle and the rectangle on top of the text. The |
| test validates that groups are conceptually rendered offscreen before being |
| rendered on the canvas. This is done by grouping the same overlapping objects and |
| rendering the group at half opacity. The background pattern (vertical stripes) should |
| show throw all the group elements. However, none of the "SVG" should show through the |
| rectangle and none of the rectangle should show through the image. |
| </Paragraph> |
| <Paragraph> |
| Prerequisites: the test assumes proper handling of the fill stroke, stroke-width, |
| opacity, font-size rendering properties. It uses the rect, line, text and image elements, as |
| well as all the elements required for the test template. To ensure that the text string is |
| overlapped by the other elements and to avoid a dependency on system fonts, an SVG font is used. |
| </Paragraph> |
| <Paragraph> |
| The rendered image should match the reference image exactly. |
| </Paragraph> |
| </OperatorScript> |
| </SVGTestCase> |
| <title id="test-title">render-groups-01-b</title> |
| <desc id="test-desc">This test validates the rendering order of graphic elements and the concept of grouping.</desc> |
| <!--======================================================================--> |
| <!--Content of Test Case follows... =====================--> |
| <!--======================================================================--> |
| <g id="test-body-content"> |
| <defs> |
| <font horiz-adv-x="313"> |
| <!-- Converted from Larabie Anglepoise by Batik ttf2svg --> |
| <font-face font-family="larabie-anglepoise" units-per-em="1000" panose-1="0 0 4 0 0 0 0 0 0 0" ascent="703" descent="-300" alphabetic="0"/> |
| <missing-glyph horiz-adv-x="500" d="M63 0V700H438V0H63ZM125 63H375V638H125V63Z"/> |
| <glyph unicode="S" glyph-name="S" horiz-adv-x="385" d="M371 1H29V144H264Q264 151 264 166Q265 180 265 188Q265 212 249 212H132Q83 212 55 247Q29 279 29 329V566H335V422H136V375Q136 360 144 356Q148 355 168 355H279Q327 355 352 309Q371 273 371 221V1Z"/> |
| <glyph unicode="V" glyph-name="V" horiz-adv-x="351" d="M365 563L183 -33L0 563H101L183 296L270 563H365Z"/> |
| <glyph unicode="G" glyph-name="G" horiz-adv-x="367" d="M355 1H18V564H355V420H125V144H248V211H156V355H355V1Z"/> |
| <hkern g1="V" g2="G" k="-40"/> |
| </font> |
| </defs> |
| <!-- ====================================================================== --> |
| <!-- 3 overlapping elements in a group with opacity --> |
| <!-- ====================================================================== --> |
| <g transform="scale(1.8, 1.8)"> |
| <!-- Background pattern --> |
| <rect x="20" y="10" width="230" height="155" fill="rgb(192, 192, 192)"/> |
| <line x1="40" y1="10" x2="40" y2="175" stroke="white" stroke-width="15"/> |
| <line x1="70" y1="10" x2="70" y2="175" stroke="white" stroke-width="15"/> |
| <line x1="100" y1="10" x2="100" y2="175" stroke="white" stroke-width="15"/> |
| <line x1="130" y1="10" x2="130" y2="175" stroke="white" stroke-width="15"/> |
| <line x1="160" y1="10" x2="160" y2="175" stroke="white" stroke-width="15"/> |
| <line x1="190" y1="10" x2="190" y2="175" stroke="white" stroke-width="15"/> |
| <line x1="220" y1="10" x2="220" y2="175" stroke="white" stroke-width="15"/> |
| <line x1="250" y1="10" x2="250" y2="175" stroke="white" stroke-width="15"/> |
| <rect x="20" y="10" width="230" height="155" fill="none" stroke="black"/> |
| <!-- The following group, as a whole, should be rendered with a .5 opacity --> |
| <!-- Conceptually, this means that the object is contains are first --> |
| <!-- rendered offscreen. Then, the offscreen is painted on the canvas with --> |
| <!-- half opacity. --> |
| <g opacity="0.5"> |
| <!-- The following text, rectangle and image are drawn, fully opaque, in --> |
| <!-- the order they are defined. Therefore, none of the 'A' under the --> |
| <!-- rectangle should show. Neither should any of the rectangle under --> |
| <!-- the image. --> |
| <text font-family="larabie-anglepoise" font-size="120" x="30" y="90">SVG</text> |
| <rect x="70" y="55" width="130" height="70" fill="rgb(130, 0, 50)"/> |
| <image x="162" y="75" width="80" height="80" xlink:href="resources/sign.png"/> |
| </g> |
| </g> |
| </g> |
| <text id="revision" x="10" y="340" font-size="40" stroke="none" fill="black">$Revision: 1.6 $</text> |
| <rect id="test-frame" x="1" y="1" width="478" height="358" fill="none" stroke="#000000"/> |
| </svg> |