postext 1.59.2 → 1.61.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (152) hide show
  1. package/dist/__tests__/exercises/digital.test.js +38 -1
  2. package/dist/__tests__/exercises/digital.test.js.map +1 -1
  3. package/dist/__tests__/exercises/followups.test.d.ts +2 -0
  4. package/dist/__tests__/exercises/followups.test.d.ts.map +1 -0
  5. package/dist/__tests__/exercises/followups.test.js +235 -0
  6. package/dist/__tests__/exercises/followups.test.js.map +1 -0
  7. package/dist/__tests__/exports.test.js +16 -0
  8. package/dist/__tests__/exports.test.js.map +1 -1
  9. package/dist/__tests__/figureStyle.test.d.ts +2 -0
  10. package/dist/__tests__/figureStyle.test.d.ts.map +1 -0
  11. package/dist/__tests__/figureStyle.test.js +218 -0
  12. package/dist/__tests__/figureStyle.test.js.map +1 -0
  13. package/dist/__tests__/headingLetterSpacing.test.js +1 -1
  14. package/dist/__tests__/headingLetterSpacing.test.js.map +1 -1
  15. package/dist/__tests__/pipeline/paragraphStyleFaces.test.js +1 -1
  16. package/dist/__tests__/pipeline/paragraphStyleFaces.test.js.map +1 -1
  17. package/dist/__tests__/pipeline/spanHeadingMidPage.test.js +76 -0
  18. package/dist/__tests__/pipeline/spanHeadingMidPage.test.js.map +1 -1
  19. package/dist/canvas-backend/annotations.d.ts +4 -1
  20. package/dist/canvas-backend/annotations.d.ts.map +1 -1
  21. package/dist/canvas-backend/annotations.js +5 -0
  22. package/dist/canvas-backend/annotations.js.map +1 -1
  23. package/dist/canvas-backend/chip.d.ts.map +1 -1
  24. package/dist/canvas-backend/chip.js +4 -0
  25. package/dist/canvas-backend/chip.js.map +1 -1
  26. package/dist/canvas-backend/verticalText.d.ts.map +1 -1
  27. package/dist/canvas-backend/verticalText.js +5 -2
  28. package/dist/canvas-backend/verticalText.js.map +1 -1
  29. package/dist/configWarnings.d.ts.map +1 -1
  30. package/dist/configWarnings.js +18 -4
  31. package/dist/configWarnings.js.map +1 -1
  32. package/dist/defaults/bodyText.d.ts.map +1 -1
  33. package/dist/defaults/bodyText.js +8 -1
  34. package/dist/defaults/bodyText.js.map +1 -1
  35. package/dist/defaults/captionStyle.d.ts.map +1 -1
  36. package/dist/defaults/captionStyle.js +7 -2
  37. package/dist/defaults/captionStyle.js.map +1 -1
  38. package/dist/defaults/exercises.d.ts.map +1 -1
  39. package/dist/defaults/exercises.js +15 -9
  40. package/dist/defaults/exercises.js.map +1 -1
  41. package/dist/defaults/headerFooter.d.ts.map +1 -1
  42. package/dist/defaults/headerFooter.js +3 -1
  43. package/dist/defaults/headerFooter.js.map +1 -1
  44. package/dist/defaults/headings.d.ts.map +1 -1
  45. package/dist/defaults/headings.js +15 -3
  46. package/dist/defaults/headings.js.map +1 -1
  47. package/dist/defaults/paragraphStyles.d.ts.map +1 -1
  48. package/dist/defaults/paragraphStyles.js +4 -1
  49. package/dist/defaults/paragraphStyles.js.map +1 -1
  50. package/dist/defaults/tableStyle.d.ts.map +1 -1
  51. package/dist/defaults/tableStyle.js +5 -2
  52. package/dist/defaults/tableStyle.js.map +1 -1
  53. package/dist/design/elementKeys.d.ts +1 -0
  54. package/dist/design/elementKeys.d.ts.map +1 -1
  55. package/dist/design/elementKeys.js +1 -1
  56. package/dist/design/elementKeys.js.map +1 -1
  57. package/dist/exercises/build.d.ts.map +1 -1
  58. package/dist/exercises/build.js +1 -0
  59. package/dist/exercises/build.js.map +1 -1
  60. package/dist/exercises/configWarnings.d.ts.map +1 -1
  61. package/dist/exercises/configWarnings.js +6 -2
  62. package/dist/exercises/configWarnings.js.map +1 -1
  63. package/dist/exercises/designs.d.ts +5 -0
  64. package/dist/exercises/designs.d.ts.map +1 -1
  65. package/dist/exercises/designs.js +45 -16
  66. package/dist/exercises/designs.js.map +1 -1
  67. package/dist/exercises/digital.d.ts +7 -0
  68. package/dist/exercises/digital.d.ts.map +1 -1
  69. package/dist/exercises/digital.js +8 -1
  70. package/dist/exercises/digital.js.map +1 -1
  71. package/dist/exercises/expand.d.ts +6 -0
  72. package/dist/exercises/expand.d.ts.map +1 -1
  73. package/dist/exercises/expand.js +108 -20
  74. package/dist/exercises/expand.js.map +1 -1
  75. package/dist/exercises/grids.d.ts.map +1 -1
  76. package/dist/exercises/grids.js +76 -16
  77. package/dist/exercises/grids.js.map +1 -1
  78. package/dist/exercises/model.d.ts +4 -1
  79. package/dist/exercises/model.d.ts.map +1 -1
  80. package/dist/exercises/model.js +56 -15
  81. package/dist/exercises/model.js.map +1 -1
  82. package/dist/exercises/record.d.ts +9 -1
  83. package/dist/exercises/record.d.ts.map +1 -1
  84. package/dist/exercises/runtime.d.ts +6 -0
  85. package/dist/exercises/runtime.d.ts.map +1 -1
  86. package/dist/exercises/runtime.js +485 -69
  87. package/dist/exercises/runtime.js.map +1 -1
  88. package/dist/exercises/styles.d.ts +1 -0
  89. package/dist/exercises/styles.d.ts.map +1 -1
  90. package/dist/exercises/styles.js +3 -0
  91. package/dist/exercises/styles.js.map +1 -1
  92. package/dist/fonts/featureFaces.d.ts +32 -0
  93. package/dist/fonts/featureFaces.d.ts.map +1 -0
  94. package/dist/fonts/featureFaces.js +166 -0
  95. package/dist/fonts/featureFaces.js.map +1 -0
  96. package/dist/fonts/figureStyle.d.ts +69 -0
  97. package/dist/fonts/figureStyle.d.ts.map +1 -0
  98. package/dist/fonts/figureStyle.js +196 -0
  99. package/dist/fonts/figureStyle.js.map +1 -0
  100. package/dist/fonts/freezeFeatures.d.ts +10 -0
  101. package/dist/fonts/freezeFeatures.d.ts.map +1 -0
  102. package/dist/fonts/freezeFeatures.js +372 -0
  103. package/dist/fonts/freezeFeatures.js.map +1 -0
  104. package/dist/fonts/glyphFallback.d.ts.map +1 -1
  105. package/dist/fonts/glyphFallback.js +6 -3
  106. package/dist/fonts/glyphFallback.js.map +1 -1
  107. package/dist/fonts/prepare.d.ts.map +1 -1
  108. package/dist/fonts/prepare.js +22 -4
  109. package/dist/fonts/prepare.js.map +1 -1
  110. package/dist/fonts/usage.d.ts +10 -0
  111. package/dist/fonts/usage.d.ts.map +1 -1
  112. package/dist/fonts/usage.js +97 -0
  113. package/dist/fonts/usage.js.map +1 -1
  114. package/dist/html-backend.d.ts.map +1 -1
  115. package/dist/html-backend.js +27 -16
  116. package/dist/html-backend.js.map +1 -1
  117. package/dist/htmlAnnotations.d.ts +5 -1
  118. package/dist/htmlAnnotations.d.ts.map +1 -1
  119. package/dist/htmlAnnotations.js +6 -0
  120. package/dist/htmlAnnotations.js.map +1 -1
  121. package/dist/index.d.ts +7 -2
  122. package/dist/index.d.ts.map +1 -1
  123. package/dist/index.js +4 -1
  124. package/dist/index.js.map +1 -1
  125. package/dist/measure/cache.js +3 -3
  126. package/dist/measure/cache.js.map +1 -1
  127. package/dist/measure/rich.d.ts.map +1 -1
  128. package/dist/measure/rich.js +72 -4
  129. package/dist/measure/rich.js.map +1 -1
  130. package/dist/parse/types.d.ts +3 -0
  131. package/dist/parse/types.d.ts.map +1 -1
  132. package/dist/pipeline/build.d.ts.map +1 -1
  133. package/dist/pipeline/build.js +38 -7
  134. package/dist/pipeline/build.js.map +1 -1
  135. package/dist/pipeline/headingStyles.d.ts.map +1 -1
  136. package/dist/pipeline/headingStyles.js +3 -0
  137. package/dist/pipeline/headingStyles.js.map +1 -1
  138. package/dist/types.d.ts +61 -0
  139. package/dist/types.d.ts.map +1 -1
  140. package/dist/vdt.d.ts +5 -0
  141. package/dist/vdt.d.ts.map +1 -1
  142. package/dist/vdt.js.map +1 -1
  143. package/dist/worker/client.d.ts.map +1 -1
  144. package/dist/worker/client.js +13 -2
  145. package/dist/worker/client.js.map +1 -1
  146. package/dist/worker/fonts.d.ts +1 -1
  147. package/dist/worker/fonts.d.ts.map +1 -1
  148. package/dist/worker/fonts.js +1 -1
  149. package/dist/worker/fonts.js.map +1 -1
  150. package/dist/worker/protocol.d.ts +4 -0
  151. package/dist/worker/protocol.d.ts.map +1 -1
  152. package/package.json +1 -1
@@ -0,0 +1,372 @@
1
+ // A font file with features frozen in (#1237): a copy whose `cmap` maps
2
+ // each character to the glyph the features' single substitutions give it,
3
+ // for a canvas that sets no features (Skia in Node, the CLI). Measured and
4
+ // painted with the copy, a style's figures come out as the browser sets
5
+ // them with `featureSettings` and the PDF with the features: the figures
6
+ // are glyphs of their own, reached through single substitutions (GSUB
7
+ // lookup type 1, or 7 wrapping it) in every font that has them. Contextual
8
+ // lookups are left out, and so is GPOS: the copy kerns the glyphs it maps
9
+ // as the font kerns them.
10
+ const tag = (view, at) => String.fromCharCode(view.getUint8(at), view.getUint8(at + 1), view.getUint8(at + 2), view.getUint8(at + 3));
11
+ function tableRecords(view) {
12
+ if (view.byteLength < 12)
13
+ return null;
14
+ const version = view.getUint32(0);
15
+ if (version !== 0x00010000 && tag(view, 0) !== 'OTTO' && tag(view, 0) !== 'true')
16
+ return null;
17
+ const count = view.getUint16(4);
18
+ if (12 + count * 16 > view.byteLength)
19
+ return null;
20
+ const out = [];
21
+ for (let i = 0; i < count; i++) {
22
+ const at = 12 + i * 16;
23
+ const offset = view.getUint32(at + 8);
24
+ const length = view.getUint32(at + 12);
25
+ if (offset + length > view.byteLength)
26
+ return null;
27
+ out.push({ tag: tag(view, at), offset, length });
28
+ }
29
+ return out;
30
+ }
31
+ /** The characters a `cmap` maps to glyphs (formats 4 and 12, the Unicode
32
+ * subtables), code point → glyph id. */
33
+ function readCmap(view, at) {
34
+ const map = new Map();
35
+ const count = view.getUint16(at + 2);
36
+ const subtables = [];
37
+ for (let i = 0; i < count; i++) {
38
+ const r = at + 4 + i * 8;
39
+ subtables.push({ platform: view.getUint16(r), encoding: view.getUint16(r + 2), offset: at + view.getUint32(r + 4) });
40
+ }
41
+ const unicode = subtables.filter((s) => s.platform === 0 || (s.platform === 3 && (s.encoding === 1 || s.encoding === 10)));
42
+ // Format 12 first (it holds the whole range), then format 4.
43
+ const ordered = [...unicode].sort((a, b) => (view.getUint16(b.offset) === 12 ? 1 : 0) - (view.getUint16(a.offset) === 12 ? 1 : 0));
44
+ for (const s of ordered) {
45
+ const format = view.getUint16(s.offset);
46
+ if (format === 12) {
47
+ const groups = view.getUint32(s.offset + 12);
48
+ for (let g = 0; g < groups; g++) {
49
+ const r = s.offset + 16 + g * 12;
50
+ const start = view.getUint32(r);
51
+ const end = view.getUint32(r + 4);
52
+ const glyph = view.getUint32(r + 8);
53
+ for (let c = start; c <= end && c <= 0x10ffff; c++)
54
+ if (!map.has(c))
55
+ map.set(c, glyph + (c - start));
56
+ }
57
+ }
58
+ else if (format === 4) {
59
+ const segX2 = view.getUint16(s.offset + 6);
60
+ const ends = s.offset + 14;
61
+ const starts = ends + segX2 + 2;
62
+ const deltas = starts + segX2;
63
+ const ranges = deltas + segX2;
64
+ for (let k = 0; k < segX2; k += 2) {
65
+ const end = view.getUint16(ends + k);
66
+ const start = view.getUint16(starts + k);
67
+ const delta = view.getInt16(deltas + k);
68
+ const rangeOffset = view.getUint16(ranges + k);
69
+ for (let c = start; c <= end && c !== 0xffff; c++) {
70
+ if (map.has(c))
71
+ continue;
72
+ let glyph;
73
+ if (rangeOffset === 0) {
74
+ glyph = (c + delta) & 0xffff;
75
+ }
76
+ else {
77
+ const g = ranges + k + rangeOffset + (c - start) * 2;
78
+ if (g + 2 > view.byteLength)
79
+ continue;
80
+ glyph = view.getUint16(g);
81
+ if (glyph !== 0)
82
+ glyph = (glyph + delta) & 0xffff;
83
+ }
84
+ if (glyph !== 0)
85
+ map.set(c, glyph);
86
+ }
87
+ }
88
+ }
89
+ }
90
+ return map;
91
+ }
92
+ /** The glyphs a coverage table lists, glyph id → coverage index. */
93
+ function readCoverage(view, at) {
94
+ const out = new Map();
95
+ const format = view.getUint16(at);
96
+ if (format === 1) {
97
+ const count = view.getUint16(at + 2);
98
+ for (let i = 0; i < count; i++)
99
+ out.set(view.getUint16(at + 4 + i * 2), i);
100
+ }
101
+ else if (format === 2) {
102
+ const count = view.getUint16(at + 2);
103
+ for (let i = 0; i < count; i++) {
104
+ const r = at + 4 + i * 6;
105
+ const start = view.getUint16(r);
106
+ const end = view.getUint16(r + 2);
107
+ const index = view.getUint16(r + 4);
108
+ for (let g = start; g <= end; g++)
109
+ out.set(g, index + (g - start));
110
+ }
111
+ }
112
+ return out;
113
+ }
114
+ /** A single substitution subtable as a glyph map. */
115
+ function readSingleSubstitution(view, at) {
116
+ const out = new Map();
117
+ const format = view.getUint16(at);
118
+ const coverage = readCoverage(view, at + view.getUint16(at + 2));
119
+ if (format === 1) {
120
+ const delta = view.getInt16(at + 4);
121
+ for (const glyph of coverage.keys())
122
+ out.set(glyph, (glyph + delta) & 0xffff);
123
+ }
124
+ else if (format === 2) {
125
+ const count = view.getUint16(at + 4);
126
+ for (const [glyph, index] of coverage)
127
+ if (index < count)
128
+ out.set(glyph, view.getUint16(at + 6 + index * 2));
129
+ }
130
+ return out;
131
+ }
132
+ /** The single substitutions of `features` in a `GSUB` table, one map per
133
+ * lookup, in lookup order (the order they apply in). */
134
+ function featureSubstitutions(view, at, features) {
135
+ const featureList = at + view.getUint16(at + 6);
136
+ const lookupList = at + view.getUint16(at + 8);
137
+ const lookups = new Set();
138
+ const featureCount = view.getUint16(featureList);
139
+ for (let i = 0; i < featureCount; i++) {
140
+ const r = featureList + 2 + i * 6;
141
+ if (!features.has(tag(view, r)))
142
+ continue;
143
+ const feature = featureList + view.getUint16(r + 4);
144
+ const n = view.getUint16(feature + 2);
145
+ for (let k = 0; k < n; k++)
146
+ lookups.add(view.getUint16(feature + 4 + k * 2));
147
+ }
148
+ const lookupCount = view.getUint16(lookupList);
149
+ const out = [];
150
+ for (const index of [...lookups].sort((a, b) => a - b)) {
151
+ if (index >= lookupCount)
152
+ continue;
153
+ const lookup = lookupList + view.getUint16(lookupList + 2 + index * 2);
154
+ const type = view.getUint16(lookup);
155
+ const subCount = view.getUint16(lookup + 4);
156
+ const map = new Map();
157
+ for (let s = 0; s < subCount; s++) {
158
+ let sub = lookup + view.getUint16(lookup + 6 + s * 2);
159
+ let subType = type;
160
+ // An extension subtable points at a subtable of its own type.
161
+ if (type === 7 && view.getUint16(sub) === 1) {
162
+ subType = view.getUint16(sub + 2);
163
+ sub += view.getUint32(sub + 4);
164
+ }
165
+ if (subType !== 1)
166
+ continue;
167
+ // The first subtable that covers a glyph substitutes it.
168
+ for (const [from, to] of readSingleSubstitution(view, sub))
169
+ if (!map.has(from))
170
+ map.set(from, to);
171
+ }
172
+ if (map.size > 0)
173
+ out.push(map);
174
+ }
175
+ return out;
176
+ }
177
+ class Writer {
178
+ chunks = [];
179
+ u16(v) { this.chunks.push((v >> 8) & 0xff, v & 0xff); }
180
+ u32(v) { this.u16((v >>> 16) & 0xffff); this.u16(v & 0xffff); }
181
+ get length() { return this.chunks.length; }
182
+ bytes() { return Uint8Array.from(this.chunks); }
183
+ }
184
+ /** A format 12 subtable of `map` (sorted code points). */
185
+ function format12(entries) {
186
+ const groups = [];
187
+ for (const [c, g] of entries) {
188
+ const last = groups[groups.length - 1];
189
+ if (last && c === last[1] + 1 && g === last[2] + (c - last[0]))
190
+ last[1] = c;
191
+ else
192
+ groups.push([c, c, g]);
193
+ }
194
+ const w = new Writer();
195
+ w.u16(12);
196
+ w.u16(0);
197
+ w.u32(16 + groups.length * 12);
198
+ w.u32(0);
199
+ w.u32(groups.length);
200
+ for (const [start, end, glyph] of groups) {
201
+ w.u32(start);
202
+ w.u32(end);
203
+ w.u32(glyph);
204
+ }
205
+ return w.bytes();
206
+ }
207
+ /** A format 4 subtable of the BMP characters of `map`, or null when it
208
+ * does not fit one (64 KB). */
209
+ function format4(entries) {
210
+ const bmp = entries.filter(([c]) => c < 0xffff);
211
+ // Segments of consecutive characters; each lists its glyphs.
212
+ const segments = [];
213
+ for (const [c, g] of bmp) {
214
+ const last = segments[segments.length - 1];
215
+ if (last && c === last.end + 1) {
216
+ last.end = c;
217
+ last.glyphs.push(g);
218
+ }
219
+ else {
220
+ segments.push({ start: c, end: c, glyphs: [g] });
221
+ }
222
+ }
223
+ const count = segments.length + 1;
224
+ const glyphWords = segments.reduce((n, s) => n + s.glyphs.length, 0);
225
+ const length = 16 + count * 8 + glyphWords * 2;
226
+ if (length > 0xffff)
227
+ return null;
228
+ const w = new Writer();
229
+ let search = 1;
230
+ let selector = 0;
231
+ while (search * 2 <= count) {
232
+ search *= 2;
233
+ selector++;
234
+ }
235
+ w.u16(4);
236
+ w.u16(length);
237
+ w.u16(0);
238
+ w.u16(count * 2);
239
+ w.u16(search * 2);
240
+ w.u16(selector);
241
+ w.u16(count * 2 - search * 2);
242
+ for (const s of segments)
243
+ w.u16(s.end);
244
+ w.u16(0xffff);
245
+ w.u16(0);
246
+ for (const s of segments)
247
+ w.u16(s.start);
248
+ w.u16(0xffff);
249
+ for (let i = 0; i < segments.length; i++)
250
+ w.u16(0);
251
+ w.u16(1);
252
+ // idRangeOffset: from the offset's own place to the segment's glyphs.
253
+ let glyphAt = 0;
254
+ for (let i = 0; i < segments.length; i++) {
255
+ w.u16((count - i) * 2 + glyphAt * 2);
256
+ glyphAt += segments[i].glyphs.length;
257
+ }
258
+ w.u16(0);
259
+ for (const s of segments)
260
+ for (const g of s.glyphs)
261
+ w.u16(g);
262
+ return w.bytes();
263
+ }
264
+ function buildCmap(map) {
265
+ const entries = [...map].sort((a, b) => a[0] - b[0]);
266
+ const f12 = format12(entries);
267
+ const f4 = format4(entries);
268
+ const records = f4
269
+ ? [[0, 3, f4], [0, 4, f12], [3, 1, f4], [3, 10, f12]]
270
+ : [[0, 4, f12], [3, 10, f12]];
271
+ const w = new Writer();
272
+ w.u16(0);
273
+ w.u16(records.length);
274
+ const header = 4 + records.length * 8;
275
+ const offsets = new Map();
276
+ let at = header;
277
+ for (const sub of [f4, f12]) {
278
+ if (!sub)
279
+ continue;
280
+ offsets.set(sub, at);
281
+ at += sub.length;
282
+ }
283
+ for (const [platform, encoding, sub] of records) {
284
+ w.u16(platform);
285
+ w.u16(encoding);
286
+ w.u32(offsets.get(sub));
287
+ }
288
+ const head = w.bytes();
289
+ const out = new Uint8Array(at);
290
+ out.set(head, 0);
291
+ for (const [sub, offset] of offsets)
292
+ out.set(sub, offset);
293
+ return out;
294
+ }
295
+ function checksum(bytes, from, length) {
296
+ let sum = 0;
297
+ for (let i = 0; i < length; i += 4) {
298
+ let word = 0;
299
+ for (let k = 0; k < 4; k++)
300
+ word = (word << 8) | (i + k < length ? bytes[from + i + k] : 0);
301
+ sum = (sum + (word >>> 0)) >>> 0;
302
+ }
303
+ return sum;
304
+ }
305
+ /** The file with `cmap` in place of its own: tables in their order, each
306
+ * on a four-byte boundary, the checksum of the new table computed. */
307
+ function withCmap(bytes, view, records, cmap) {
308
+ const count = records.length;
309
+ const headerLength = 12 + count * 16;
310
+ const bodies = records.map((r) => (r.tag === 'cmap' ? cmap : bytes.subarray(r.offset, r.offset + r.length)));
311
+ let total = headerLength;
312
+ for (const b of bodies)
313
+ total += (b.length + 3) & ~3;
314
+ const out = new Uint8Array(total);
315
+ out.set(bytes.subarray(0, 12), 0);
316
+ const outView = new DataView(out.buffer);
317
+ let at = headerLength;
318
+ records.forEach((r, i) => {
319
+ const body = bodies[i];
320
+ out.set(body, at);
321
+ const rec = 12 + i * 16;
322
+ out.set(bytes.subarray(12 + i * 16, 12 + i * 16 + 4), rec);
323
+ outView.setUint32(rec + 4, r.tag === 'cmap' ? checksum(out, at, body.length) : view.getUint32(12 + i * 16 + 4));
324
+ outView.setUint32(rec + 8, at);
325
+ outView.setUint32(rec + 12, body.length);
326
+ at += (body.length + 3) & ~3;
327
+ });
328
+ return out;
329
+ }
330
+ /**
331
+ * A copy of a TrueType or OpenType file (`bytes`, not a collection nor a
332
+ * WOFF) whose `cmap` maps every character to the glyph the single
333
+ * substitutions of `features` (`['onum']`, `['lnum', 'tnum']`) give it,
334
+ * applied in lookup order; the other tables as they are. The file itself
335
+ * when the features substitute none of its characters, and null when it
336
+ * cannot be read.
337
+ */
338
+ export function freezeFontFeatures(bytes, features) {
339
+ const view = new DataView(bytes.buffer, bytes.byteOffset, bytes.byteLength);
340
+ const records = tableRecords(view);
341
+ if (!records)
342
+ return null;
343
+ const cmapTable = records.find((r) => r.tag === 'cmap');
344
+ if (!cmapTable)
345
+ return null;
346
+ const gsub = records.find((r) => r.tag === 'GSUB');
347
+ if (!gsub || features.length === 0)
348
+ return bytes;
349
+ let substitutions;
350
+ let map;
351
+ try {
352
+ map = readCmap(view, cmapTable.offset);
353
+ substitutions = featureSubstitutions(view, gsub.offset, new Set(features));
354
+ }
355
+ catch {
356
+ return null;
357
+ }
358
+ let changed = false;
359
+ for (const [c, glyph] of map) {
360
+ let g = glyph;
361
+ for (const lookup of substitutions)
362
+ g = lookup.get(g) ?? g;
363
+ if (g !== glyph) {
364
+ map.set(c, g);
365
+ changed = true;
366
+ }
367
+ }
368
+ if (!changed)
369
+ return bytes;
370
+ return withCmap(bytes, view, records, buildCmap(map));
371
+ }
372
+ //# sourceMappingURL=freezeFeatures.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"freezeFeatures.js","sourceRoot":"","sources":["../../src/fonts/freezeFeatures.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"glyphFallback.d.ts","sourceRoot":"","sources":["../../src/fonts/glyphFallback.ts"],"names":[],"mappings":"AAwBA,OAAO,KAAK,EAAE,WAAW,EAAW,MAAM,WAAW,CAAC;AAGtD,OAAO,EAAuC,KAAK,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAErG,OAAO,EAAmD,kBAAkB,EAAE,KAAK,YAAY,EAAE,KAAK,eAAe,EAAE,MAAM,YAAY,CAAC;AAC1I,OAAO,EAAiE,KAAK,eAAe,EAAE,MAAM,WAAW,CAAC;AAGhH,qDAAqD;AACrD,MAAM,WAAW,aAAc,SAAQ,eAAe;IACpD;yDACqD;IACrD,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,kCAAkC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd;;gFAE4E;IAC5E,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,2CAA2C;AAC3C,eAAO,MAAM,qBAAqB,KAAK,CAAC;AAIxC,0CAA0C;AAC1C,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAS9B,KAAK,mBAAmB,GAAG,KAAK,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,eAAe,EAAE,WAAW,CAAC,EAAE,mBAAmB,KAAK,YAAY,CAAC;AAE1I;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,IAAI,EAAE,YAAY,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC,CAiB9H;AAuCD;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,GAAG,MAAM,EACvB,KAAK,EAAE,QAAQ,GAAG,QAAQ,GAAG,MAAM,EACnC,IAAI,EAAE,UAAU,GAAG,WAAW,GAAG,eAAe,EAChD,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAST;AAED,yEAAyE;AACzE,wBAAgB,kBAAkB,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,IAAI,CAOpE;AAgED;;8DAE8D;AAC9D,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,WAAW,GAAG,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CA+B5E;AAID,KAAK,QAAQ,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,GAAG,QAAQ,EAAE,EAAE,EAAE,MAAM,KAAK,OAAO,GAAG,SAAS,CAAC;AAChH,KAAK,UAAU,GAAG,CAAC,IAAI,EAAE,eAAe,EAAE,EAAE,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;AAE5E,MAAM,WAAW,oBAAoB;IACnC;;oEAEgE;IAChE,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB;;;qDAGiD;IACjD,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB;qEACiE;IACjE,IAAI,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CAC5B;AAmCD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,WAAW,GAAG,SAAS,WAAW,EAAE,EAAE,OAAO,GAAE,oBAAyB,GAAG,aAAa,EAAE,CA4C9H"}
1
+ {"version":3,"file":"glyphFallback.d.ts","sourceRoot":"","sources":["../../src/fonts/glyphFallback.ts"],"names":[],"mappings":"AAwBA,OAAO,KAAK,EAAE,WAAW,EAAW,MAAM,WAAW,CAAC;AAGtD,OAAO,EAAuC,KAAK,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAErG,OAAO,EAAmD,kBAAkB,EAAE,KAAK,YAAY,EAAE,KAAK,eAAe,EAAE,MAAM,YAAY,CAAC;AAC1I,OAAO,EAAiE,KAAK,eAAe,EAAE,MAAM,WAAW,CAAC;AAIhH,qDAAqD;AACrD,MAAM,WAAW,aAAc,SAAQ,eAAe;IACpD;yDACqD;IACrD,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,kCAAkC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd;;gFAE4E;IAC5E,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,2CAA2C;AAC3C,eAAO,MAAM,qBAAqB,KAAK,CAAC;AAIxC,0CAA0C;AAC1C,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAS9B,KAAK,mBAAmB,GAAG,KAAK,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,eAAe,EAAE,WAAW,CAAC,EAAE,mBAAmB,KAAK,YAAY,CAAC;AAE1I;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,IAAI,EAAE,YAAY,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC,CAiB9H;AAuCD;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,GAAG,MAAM,EACvB,KAAK,EAAE,QAAQ,GAAG,QAAQ,GAAG,MAAM,EACnC,IAAI,EAAE,UAAU,GAAG,WAAW,GAAG,eAAe,EAChD,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAUT;AAED,yEAAyE;AACzE,wBAAgB,kBAAkB,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,IAAI,CAQpE;AAgED;;8DAE8D;AAC9D,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,WAAW,GAAG,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CA+B5E;AAID,KAAK,QAAQ,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,GAAG,QAAQ,EAAE,EAAE,EAAE,MAAM,KAAK,OAAO,GAAG,SAAS,CAAC;AAChH,KAAK,UAAU,GAAG,CAAC,IAAI,EAAE,eAAe,EAAE,EAAE,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;AAE5E,MAAM,WAAW,oBAAoB;IACnC;;oEAEgE;IAChE,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB;;;qDAGiD;IACjD,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB;qEACiE;IACjE,IAAI,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CAC5B;AAmCD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,WAAW,GAAG,SAAS,WAAW,EAAE,EAAE,OAAO,GAAE,oBAAyB,GAAG,aAAa,EAAE,CA4C9H"}
@@ -28,6 +28,7 @@ import { parseUnicodeRange } from '../svg/fontRegistry.js';
28
28
  import { defaultFontSet, isGenericFamily, faceRequestKey, GLYPH_PROBE_FAMILY } from './faces.js';
29
29
  import { intersectRanges, rangesHave, sfntCodePointRanges, unionRanges } from './cmap.js';
30
30
  import { minimalFont } from './minimalFont.js';
31
+ import { baseFontFamily, isFeatureFamily } from './figureStyle.js';
31
32
  /** How many characters a warning lists. */
32
33
  export const GLYPH_FALLBACK_LISTED = 24;
33
34
  // --- The glyph probe -------------------------------------------------------
@@ -108,7 +109,8 @@ export function registerFontCoverage(family, weight, style, file, unicodeRange)
108
109
  return false;
109
110
  const slice = parseUnicodeRange(unicodeRange);
110
111
  const ranges = slice ? intersectRanges(read, slice) : read;
111
- coverage.push({ family: family.toLowerCase(), weight: weightRange(weight), style: /italic|oblique/i.test(style) ? 'italic' : 'normal', ranges });
112
+ // A feature family (#1237) covers what its base family's files cover.
113
+ coverage.push({ family: baseFontFamily(family).toLowerCase(), weight: weightRange(weight), style: /italic|oblique/i.test(style) ? 'italic' : 'normal', ranges });
112
114
  return true;
113
115
  }
114
116
  /** Forget the coverage registered for `families` (all of it without). */
@@ -117,7 +119,8 @@ export function forgetFontCoverage(families) {
117
119
  coverage.length = 0;
118
120
  return;
119
121
  }
120
- const drop = new Set([...families].map((f) => f.toLowerCase()));
122
+ // A feature family's files are its base family's, forgotten with it.
123
+ const drop = new Set([...families].filter((f) => !isFeatureFamily(f)).map((f) => f.toLowerCase()));
121
124
  for (let i = coverage.length - 1; i >= 0; i--)
122
125
  if (drop.has(coverage[i].family))
123
126
  coverage.splice(i, 1);
@@ -126,7 +129,7 @@ export function forgetFontCoverage(families) {
126
129
  * face cover: its slant first, the nearest weight. Undefined when no file
127
130
  * of the family is registered. */
128
131
  function registeredCoverage(family, weight, style) {
129
- const lower = family.toLowerCase();
132
+ const lower = baseFontFamily(family).toLowerCase();
130
133
  const own = coverage.filter((e) => e.family === lower);
131
134
  if (own.length === 0)
132
135
  return undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"glyphFallback.js","sourceRoot":"","sources":["../../src/fonts/glyphFallback.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"glyphFallback.js","sourceRoot":"","sources":["../../src/fonts/glyphFallback.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"prepare.d.ts","sourceRoot":"","sources":["../../src/fonts/prepare.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prepare.d.ts","sourceRoot":"","sources":["../../src/fonts/prepare.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,8 @@ import { defaultFontSet, documentFontFaces, faceRequestKey, fontFallbacks, isGen
10
10
  import { isFontSetTracked, syncFontSet, watchFonts } from './fontSet.js';
11
11
  import { registerFontBytes, registerFontUrl } from '../svg/fontRegistry.js';
12
12
  import { installGlyphProbe, registerFontCoverage } from './glyphFallback.js';
13
+ import { declareFeatureFaces, rememberFaceSource } from './featureFaces.js';
14
+ import { featureFamilyParts, fontFeatureSettings } from './figureStyle.js';
13
15
  /** The texts of a build's content: the Markdown, the metadata and the
14
16
  * resources' captions, notes and cells. */
15
17
  export function contentTexts(content) {
@@ -194,11 +196,19 @@ async function loadFaces(faces, fontSet, sample, options) {
194
196
  const touched = new Set();
195
197
  const toAdd = faces.map(() => []);
196
198
  await Promise.all(faces.map(async (f, i) => {
199
+ // A feature family (#1237): the files of its base family, declared
200
+ // with its features — from the faces of the base family the set holds,
201
+ // else from the resolver's files of the base family.
202
+ const parts = featureFamilyParts(f.family);
203
+ const feature = parts.features.length > 0;
204
+ const fileFamily = feature ? parts.family : f.family;
205
+ if (feature)
206
+ declareFeatureFaces(fontSet, f.family, FontFaceCtor);
197
207
  let declared = declaredFaces(fontSet, f.family);
198
208
  if (!hasExactFace(declared, f) && options.resolve) {
199
209
  let files = [];
200
210
  try {
201
- files = normalizeAnswer(await until(Promise.resolve(options.resolve(f.family, f.weight, f.style, request)), deadline, null));
211
+ files = normalizeAnswer(await until(Promise.resolve(options.resolve(fileFamily, f.weight, f.style, request)), deadline, null));
202
212
  }
203
213
  catch {
204
214
  files = [];
@@ -209,16 +219,21 @@ async function loadFaces(faces, fontSet, sample, options) {
209
219
  weight: String(file.weight ?? f.weight),
210
220
  style: file.style ?? f.style,
211
221
  ...(file.unicodeRange ? { unicodeRange: file.unicodeRange } : {}),
222
+ ...(feature ? { featureSettings: fontFeatureSettings(parts.features) } : {}),
212
223
  };
213
224
  const source = typeof file.source === 'string' ? cssSource(file.source) : file.source;
214
- return { file, face: new FontFaceCtor(f.family, source, descriptors), descriptors };
225
+ const face = new FontFaceCtor(f.family, source, descriptors);
226
+ // The file a feature family of this family is declared from.
227
+ if (!feature)
228
+ rememberFaceSource(face, source, descriptors);
229
+ return { file, face, descriptors };
215
230
  });
216
231
  const loaded = await Promise.all(made.map(async ({ face }) => (face.load ? until(face.load().then(() => true), deadline, false) : true)));
217
232
  made.forEach(({ file, face, descriptors }, k) => {
218
233
  if (!loaded[k])
219
234
  return;
220
235
  toAdd[i].push(face);
221
- if (options.register !== false) {
236
+ if (options.register !== false && !feature) {
222
237
  const style = String(descriptors.style);
223
238
  if (typeof file.source === 'string') {
224
239
  if (!/^\s*local\(/i.test(file.source))
@@ -239,7 +254,10 @@ async function loadFaces(faces, fontSet, sample, options) {
239
254
  return;
240
255
  }
241
256
  }
242
- // The resolver may have declared the face itself.
257
+ // The resolver may have declared the face itself (the base
258
+ // family's, for a feature family).
259
+ if (feature)
260
+ declareFeatureFaces(fontSet, f.family, FontFaceCtor);
243
261
  declared = declaredFaces(fontSet, f.family);
244
262
  }
245
263
  if (declared.length > 0) {