summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/svg/import/fonts-desc-02-t-manual.svg
blob: fce1a30412dbc076b8747574da33fc30dfa3eded (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
<svg version="1.1" baseProfile="tiny" id="svg-root"
  width="100%" height="100%" viewBox="0 0 480 360"
  xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
  <!--======================================================================-->
  <!--=  SVG 1.1 2nd Edition Test Case                                     =-->
  <!--======================================================================-->
  <!--=  Copyright 2009 World Wide Web Consortium, (Massachusetts          =-->
  <!--=  Institute of Technology, European Research Consortium for         =-->
  <!--=  Informatics and Mathematics (ERCIM), Keio University).            =-->
  <!--=  All Rights Reserved.                                              =-->
  <!--=  See http://www.w3.org/Consortium/Legal/.                          =-->
  <!--======================================================================-->
  <d:SVGTestCase xmlns:d="http://www.w3.org/2000/02/svg/testsuite/description/"
    template-version="1.4" reviewer="CN" author="CN" status="accepted"
    version="$Revision: 1.5 $" testname="$RCSfile: fonts-desc-02-t.svg,v $">
    <d:testDescription xmlns="http://www.w3.org/1999/xhtml" href="http://www.w3.org/TR/SVG11/fonts.html#SVGFontsOverview">
      <p>
        This tests the behaviour of CSS font matching based on font-variant attribute.
      </p>
      <p>
        The first line of text tests that the small-caps font is used for the second text element.
      </p>
      <p>
        The second line of text tests that the order of font specification does not effect the selection
        of these fonts.
      </p>
      <p>
        The third line of text tests that the correct font is selected when a font in the list does not support
        the variant required. Note that the fonts provide no x-height so scaling
        (allowed by CSS) cannot be used to simulate a small cap from a regular font.
      </p>
      <p>
        The last line tests if small-caps are synthesized.
      </p>
    </d:testDescription>
    <d:operatorScript xmlns="http://www.w3.org/1999/xhtml">
      <p>
        Run the test. No interaction required.
      </p>
    </d:operatorScript>
    <d:passCriteria xmlns="http://www.w3.org/1999/xhtml">
      <p>
        The first line of text should be 'square' 'triangle'.
      </p>
      <p>
        The second line of text should be 'square' 'triangle'.
      </p>
      <p>
        The third line of text should be 'square', 'diamond', 'square', 'diamond'.
        Note that the fonts provide no x-height so scaling
        (allowed by CSS) cannot be used to simulate a small cap from a regular font.
      </p>
      <p>
        The last line of test can be 'square', 'a', 'a' (from a fallback font),
        'diamond'. The first 'a'
        can be replaced with a smallcaps 'A', if there is a smallcaps font installed
        or  if synthesis is supported.
      </p>
    </d:passCriteria>
  </d:SVGTestCase>
  <title id="test-title">$RCSfile: fonts-desc-02-t.svg,v $</title>
  <defs>
    <font-face font-family="SVGFreeSansASCII" unicode-range="U+0-7F">
      <font-face-src>
        <font-face-uri xlink:href="../resources/SVGFreeSans.svg#ascii"/>
      </font-face-src>
    </font-face>
  </defs>
  <g id="test-body-content" font-family="SVGFreeSansASCII,sans-serif" font-size="18">
    <defs>
      <font horiz-adv-x="500">
        <font-face font-family="SVGFont1" units-per-em="1000" ascent="800" descent="200" alphabetic="200"/>
        <missing-glyph horiz-adv-x="500" d="M0 0L500 0L500 1000L0 1000M50 50L50 950L450 950L450 50Z"/>
        <glyph unicode=" " glyph-name="space"/>
        <glyph unicode="a" glyph-name="square" d="M0 250L500 250L500 750L0 750Z"/>
      </font>

      <font horiz-adv-x="500">
        <font-face font-family="SVGFont1" font-variant="small-caps" units-per-em="1000" ascent="800" descent="200" alphabetic="200"/>
        <missing-glyph horiz-adv-x="500" d="M0 0L500 0L500 1000L0 1000M50 50L50 950L450 950L450 50Z"/>
        <glyph unicode=" " glyph-name="space"/>
        <glyph unicode="a" glyph-name="upward-triangle" d="M0 0L500 0L250 900Z"/>
      </font>

      <font horiz-adv-x="500">
        <font-face font-family="SVGFont2" font-variant="small-caps" units-per-em="1000" ascent="800" descent="200" alphabetic="200"/>
        <missing-glyph horiz-adv-x="500" d="M0 0L500 0L500 1000L0 1000M50 50L50 950L450 950L450 50Z"/>
        <glyph unicode=" " glyph-name="space"/>
        <glyph unicode="a" glyph-name="upward-triangle" d="M0 0L500 0L250 900Z"/>
      </font>

      <font horiz-adv-x="500">
        <font-face font-family="SVGFont2" units-per-em="1000" ascent="800" descent="200" alphabetic="200"/>
        <missing-glyph horiz-adv-x="500" d="M0 0L500 0L500 1000L0 1000M50 50L50 950L450 950L450 50Z"/>
        <glyph unicode=" " glyph-name="space"/>
        <glyph unicode="a" glyph-name="square" d="M0 250L500 250L500 750L0 750Z"/>
      </font>

      <font horiz-adv-x="500">
        <font-face font-family="SVGFont4" font-variant="normal" units-per-em="1000" ascent="800" descent="200" alphabetic="200"/>
        <missing-glyph horiz-adv-x="500" d="M0 0L500 0L500 1000L0 1000M50 50L50 950L450 950L450 50Z"/>
        <glyph unicode=" " glyph-name="space"/>
        <glyph unicode="a" glyph-name="square" d="M0 250L500 250L500 750L0 750Z"/>
      </font>

      <font horiz-adv-x="500">
        <font-face font-family="SVGFont5" font-variant="small-caps" units-per-em="1000" ascent="800" descent="200" alphabetic="200"/>
        <missing-glyph horiz-adv-x="500" d="M0 0L500 0L500 1000L0 1000M50 50L50 950L450 950L450 50Z"/>
        <glyph unicode=" " glyph-name="space"/>
        <glyph unicode="a" glyph-name="diamond" d="M0 500L250 250L500 500L250 750Z"/>
      </font>

    </defs>

    <g font-size="30">
      <!-- This should produce a square followed by a triangle  -->
      <text x="50" y="50" font-family="SVGFont1">a</text>
      <text x="100" y="50" font-family="SVGFont1" font-variant="small-caps">a</text>

      <!-- This should produce a square followed by a triangle  -->
      <text x="50" y="100" font-family="SVGFont2">a</text>
      <text x="100" y="100" font-family="SVGFont2" font-variant="small-caps">a</text>

      <!-- This should produce a square, diamond, square, diamond. -->
      <text x="50" y="150" font-family="SVGFont5,SVGFont4" font-variant="normal">a</text>
      <text x="100" y="150" font-family="SVGFont5,SVGFont4" font-variant="small-caps">a</text>
      <text x="150" y="150" font-family="SVGFont4,SVGFont5" font-variant="normal">a</text>
      <text x="200" y="150" font-family="SVGFont4,SVGFont5" font-variant="small-caps">a</text>

      <!--
            This should produce a square, 'a', 'a', diamond. Or a small-caps version of the 'A'
            instead of the first lower-case 'a' if synethesis is supported
        -->
      <text x="50" y="200" font-family="SVGFont4" font-variant="normal">a</text>
      <text x="100" y="200" font-family="SVGFont4" font-variant="small-caps">a</text>
      <text x="150" y="200" font-family="SVGFont5" font-variant="normal">a</text>
      <text x="200" y="200" font-family="SVGFont5" font-variant="small-caps">a</text>
    </g>
  </g>
  <g font-family="SVGFreeSansASCII,sans-serif" font-size="32">
    <text id="revision" x="10" y="340" stroke="none" fill="black">$Revision: 1.5 $</text>
  </g>
  <rect id="test-frame" x="1" y="1" width="478" height="358" fill="none" stroke="#000000"/>
  <!-- comment out this watermark once the test is approved -->
  <!--<g id="draft-watermark">
    <rect x="1" y="1" width="478" height="20" fill="red" stroke="black" stroke-width="1"/>
    <text font-family="SVGFreeSansASCII,sans-serif" font-weight="bold" font-size="20" x="240"
      text-anchor="middle" y="18" stroke-width="0.5" stroke="black" fill="white">DRAFT</text>
  </g>-->
</svg>