blob: b1151c38bdae815f1eaf859c0d477290a290bba5 [file] [log] [blame]
mmaxfield@apple.comb0a19ce2015-10-11 20:23:26 +00001<!DOCTYPE html>
2<html>
bashi@chromium.org2416da72011-08-10 19:24:26 +00003<head>
4<style>
5@font-face {
mmaxfield@apple.comb0a19ce2015-10-11 20:23:26 +00006 font-family: "FontFeaturesTestOTF";
7 src: url("resources/FontWithFeatures.otf") format("opentype");
bashi@chromium.org2416da72011-08-10 19:24:26 +00008}
mmaxfield@apple.comb0a19ce2015-10-11 20:23:26 +00009@font-face {
10 font-family: "FontFeaturesTestTTF";
11 src: url("resources/FontWithFeatures.ttf") format("truetype");
bashi@chromium.org2416da72011-08-10 19:24:26 +000012}
13</style>
bashi@chromium.org2416da72011-08-10 19:24:26 +000014</head>
mmaxfield@apple.comb0a19ce2015-10-11 20:23:26 +000015<body>
16This tests that font features are able to be turned on and off as desired. It uses a special font
17designed specifically for this purpose. The test passes if you see a sequence of alternating check
18marks and X below.
mmaxfield@apple.com7b433ed2015-10-12 19:00:47 +000019<div style="font-family: FontFeaturesTestOTF;">AB</div>
20<div style="font-family: FontFeaturesTestTTF;">AB</div>
mmaxfield@apple.comb0a19ce2015-10-11 20:23:26 +000021<div id="insertionPoint"></div>
22<div id="insertionPoint2"></div>
23<div id="insertionPoint3"></div>
24<div id="insertionPoint4"></div>
25<script>
26var insertionPoint = document.getElementById("insertionPoint");
27var insertionPoint2 = document.getElementById("insertionPoint2");
28var insertionPoint3 = document.getElementById("insertionPoint3");
29var insertionPoint4 = document.getElementById("insertionPoint4");
30function addElement(placeToInsert, familyName, feature, c) {
31 ["0", "1"].map(function(state) {
32 var element = document.createElement("span");
33 element.textContent = c;
34 element.style.fontFamily = familyName;
35 element.style.fontFeatureSettings = '"' + feature + '" ' + state;
36 placeToInsert.appendChild(element);
37 });
38 placeToInsert.appendChild(document.createTextNode(" "));
39}
40
41addElement(insertionPoint, "FontFeaturesTestOTF", "liga", "C");
42addElement(insertionPoint, "FontFeaturesTestOTF", "clig", "D");
43addElement(insertionPoint, "FontFeaturesTestOTF", "dlig", "E");
44addElement(insertionPoint, "FontFeaturesTestOTF", "hlig", "F");
45addElement(insertionPoint, "FontFeaturesTestOTF", "calt", "G");
46addElement(insertionPoint, "FontFeaturesTestOTF", "subs", "H");
47addElement(insertionPoint, "FontFeaturesTestOTF", "sups", "I");
48addElement(insertionPoint, "FontFeaturesTestOTF", "smcp", "J");
49addElement(insertionPoint, "FontFeaturesTestOTF", "c2sc", "K");
50addElement(insertionPoint, "FontFeaturesTestOTF", "pcap", "L");
51addElement(insertionPoint, "FontFeaturesTestOTF", "c2pc", "M");
52addElement(insertionPoint, "FontFeaturesTestOTF", "unic", "N");
53addElement(insertionPoint, "FontFeaturesTestOTF", "titl", "O");
54addElement(insertionPoint, "FontFeaturesTestOTF", "lnum", "P");
55addElement(insertionPoint, "FontFeaturesTestOTF", "onum", "Q");
56addElement(insertionPoint, "FontFeaturesTestOTF", "pnum", "R");
57addElement(insertionPoint, "FontFeaturesTestOTF", "tnum", "S");
58addElement(insertionPoint, "FontFeaturesTestOTF", "frac", "T");
59//addElement(insertionPoint, "FontFeaturesTestOTF", "afrc", "U");
60addElement(insertionPoint, "FontFeaturesTestOTF", "ordn", "V");
61addElement(insertionPoint, "FontFeaturesTestOTF", "zero", "W");
62addElement(insertionPoint, "FontFeaturesTestOTF", "hist", "X");
63addElement(insertionPoint, "FontFeaturesTestOTF", "jp78", "Y");
64addElement(insertionPoint, "FontFeaturesTestOTF", "jp83", "Z");
65addElement(insertionPoint, "FontFeaturesTestOTF", "jp90", "a");
66addElement(insertionPoint, "FontFeaturesTestOTF", "jp04", "b");
67addElement(insertionPoint, "FontFeaturesTestOTF", "smpl", "c");
68addElement(insertionPoint, "FontFeaturesTestOTF", "trad", "d");
69addElement(insertionPoint, "FontFeaturesTestOTF", "fwid", "e");
70addElement(insertionPoint, "FontFeaturesTestOTF", "pwid", "f");
71addElement(insertionPoint, "FontFeaturesTestOTF", "ruby", "g");
72
73addElement(insertionPoint2, "FontFeaturesTestTTF", "liga", "C");
74addElement(insertionPoint2, "FontFeaturesTestTTF", "liga", "D");
75addElement(insertionPoint2, "FontFeaturesTestTTF", "clig", "C");
76addElement(insertionPoint2, "FontFeaturesTestTTF", "clig", "D");
77addElement(insertionPoint2, "FontFeaturesTestTTF", "dlig", "G");
78addElement(insertionPoint2, "FontFeaturesTestTTF", "hlig", "I");
79addElement(insertionPoint2, "FontFeaturesTestTTF", "calt", "L");
80addElement(insertionPoint2, "FontFeaturesTestTTF", "subs", "O");
81addElement(insertionPoint2, "FontFeaturesTestTTF", "sups", "P");
82addElement(insertionPoint2, "FontFeaturesTestTTF", "smcp", "S");
83addElement(insertionPoint2, "FontFeaturesTestTTF", "c2sc", "V");
84addElement(insertionPoint2, "FontFeaturesTestTTF", "pcap", "T");
85addElement(insertionPoint2, "FontFeaturesTestTTF", "c2pc", "W");
86addElement(insertionPoint2, "FontFeaturesTestTTF", "unic", "Y");
87addElement(insertionPoint2, "FontFeaturesTestTTF", "titl", "a");
88addElement(insertionPoint2, "FontFeaturesTestTTF", "lnum", "c");
89addElement(insertionPoint2, "FontFeaturesTestTTF", "onum", "d");
90addElement(insertionPoint2, "FontFeaturesTestTTF", "pnum", "f");
91addElement(insertionPoint2, "FontFeaturesTestTTF", "tnum", "g");
92addElement(insertionPoint2, "FontFeaturesTestTTF", "frac", "i");
93addElement(insertionPoint2, "FontFeaturesTestTTF", "afrc", "j");
94addElement(insertionPoint2, "FontFeaturesTestTTF", "ordn", "Q");
95addElement(insertionPoint2, "FontFeaturesTestTTF", "zero", "k");
96addElement(insertionPoint2, "FontFeaturesTestTTF", "hist", "K");
97addElement(insertionPoint2, "FontFeaturesTestTTF", "jp78", "m");
98addElement(insertionPoint2, "FontFeaturesTestTTF", "jp83", "n");
99addElement(insertionPoint2, "FontFeaturesTestTTF", "jp90", "o");
100addElement(insertionPoint2, "FontFeaturesTestTTF", "jp04", "p");
101addElement(insertionPoint2, "FontFeaturesTestTTF", "smpl", "q");
102addElement(insertionPoint2, "FontFeaturesTestTTF", "trad", "r");
103addElement(insertionPoint2, "FontFeaturesTestTTF", "fwid", "t");
104addElement(insertionPoint2, "FontFeaturesTestTTF", "pwid", "u");
105addElement(insertionPoint2, "FontFeaturesTestTTF", "ruby", "v");
106
107addElement(insertionPoint3, "FontWithFeaturesOTF", "liga", "C");
108addElement(insertionPoint3, "FontWithFeaturesOTF", "clig", "D");
109addElement(insertionPoint3, "FontWithFeaturesOTF", "dlig", "E");
110addElement(insertionPoint3, "FontWithFeaturesOTF", "hlig", "F");
111addElement(insertionPoint3, "FontWithFeaturesOTF", "calt", "G");
112addElement(insertionPoint3, "FontWithFeaturesOTF", "subs", "H");
113addElement(insertionPoint3, "FontWithFeaturesOTF", "sups", "I");
114addElement(insertionPoint3, "FontWithFeaturesOTF", "smcp", "J");
115addElement(insertionPoint3, "FontWithFeaturesOTF", "c2sc", "K");
116addElement(insertionPoint3, "FontWithFeaturesOTF", "pcap", "L");
117addElement(insertionPoint3, "FontWithFeaturesOTF", "c2pc", "M");
118addElement(insertionPoint3, "FontWithFeaturesOTF", "unic", "N");
119addElement(insertionPoint3, "FontWithFeaturesOTF", "titl", "O");
120addElement(insertionPoint3, "FontWithFeaturesOTF", "lnum", "P");
121addElement(insertionPoint3, "FontWithFeaturesOTF", "onum", "Q");
122addElement(insertionPoint3, "FontWithFeaturesOTF", "pnum", "R");
123addElement(insertionPoint3, "FontWithFeaturesOTF", "tnum", "S");
124addElement(insertionPoint3, "FontWithFeaturesOTF", "frac", "T");
125//addElement(insertionPoint3, "FontWithFeaturesOTF", "afrc", "U");
126addElement(insertionPoint3, "FontWithFeaturesOTF", "ordn", "V");
127addElement(insertionPoint3, "FontWithFeaturesOTF", "zero", "W");
128addElement(insertionPoint3, "FontWithFeaturesOTF", "hist", "X");
129addElement(insertionPoint3, "FontWithFeaturesOTF", "jp78", "Y");
130addElement(insertionPoint3, "FontWithFeaturesOTF", "jp83", "Z");
131addElement(insertionPoint3, "FontWithFeaturesOTF", "jp90", "a");
132addElement(insertionPoint3, "FontWithFeaturesOTF", "jp04", "b");
133addElement(insertionPoint3, "FontWithFeaturesOTF", "smpl", "c");
134addElement(insertionPoint3, "FontWithFeaturesOTF", "trad", "d");
135addElement(insertionPoint3, "FontWithFeaturesOTF", "fwid", "e");
136addElement(insertionPoint3, "FontWithFeaturesOTF", "pwid", "f");
137addElement(insertionPoint3, "FontWithFeaturesOTF", "ruby", "g");
138
139addElement(insertionPoint4, "FontWithFeaturesTTF", "liga", "C");
140addElement(insertionPoint4, "FontWithFeaturesTTF", "liga", "D");
141addElement(insertionPoint4, "FontWithFeaturesTTF", "clig", "C");
142addElement(insertionPoint4, "FontWithFeaturesTTF", "clig", "D");
143addElement(insertionPoint4, "FontWithFeaturesTTF", "dlig", "G");
144addElement(insertionPoint4, "FontWithFeaturesTTF", "hlig", "I");
145addElement(insertionPoint4, "FontWithFeaturesTTF", "calt", "L");
146addElement(insertionPoint4, "FontWithFeaturesTTF", "subs", "O");
147addElement(insertionPoint4, "FontWithFeaturesTTF", "sups", "P");
148addElement(insertionPoint4, "FontWithFeaturesTTF", "smcp", "S");
149addElement(insertionPoint4, "FontWithFeaturesTTF", "c2sc", "V");
150addElement(insertionPoint4, "FontWithFeaturesTTF", "pcap", "T");
151addElement(insertionPoint4, "FontWithFeaturesTTF", "c2pc", "W");
152addElement(insertionPoint4, "FontWithFeaturesTTF", "unic", "Y");
153addElement(insertionPoint4, "FontWithFeaturesTTF", "titl", "a");
154addElement(insertionPoint4, "FontWithFeaturesTTF", "lnum", "c");
155addElement(insertionPoint4, "FontWithFeaturesTTF", "onum", "d");
156addElement(insertionPoint4, "FontWithFeaturesTTF", "pnum", "f");
157addElement(insertionPoint4, "FontWithFeaturesTTF", "tnum", "g");
158addElement(insertionPoint4, "FontWithFeaturesTTF", "frac", "i");
159addElement(insertionPoint4, "FontWithFeaturesTTF", "afrc", "j");
160addElement(insertionPoint4, "FontWithFeaturesTTF", "ordn", "Q");
161addElement(insertionPoint4, "FontWithFeaturesTTF", "zero", "k");
162addElement(insertionPoint4, "FontWithFeaturesTTF", "hist", "K");
163addElement(insertionPoint4, "FontWithFeaturesTTF", "jp78", "m");
164addElement(insertionPoint4, "FontWithFeaturesTTF", "jp83", "n");
165addElement(insertionPoint4, "FontWithFeaturesTTF", "jp90", "o");
166addElement(insertionPoint4, "FontWithFeaturesTTF", "jp04", "p");
167addElement(insertionPoint4, "FontWithFeaturesTTF", "smpl", "q");
168addElement(insertionPoint4, "FontWithFeaturesTTF", "trad", "r");
169addElement(insertionPoint4, "FontWithFeaturesTTF", "fwid", "t");
170addElement(insertionPoint4, "FontWithFeaturesTTF", "pwid", "u");
171addElement(insertionPoint4, "FontWithFeaturesTTF", "ruby", "v");
172</script>
bashi@chromium.org2416da72011-08-10 19:24:26 +0000173</body>
mmaxfield@apple.comb0a19ce2015-10-11 20:23:26 +0000174</html>