@chr33s/pdf-standard-fonts 5.0.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 (116) hide show
  1. package/LICENSE.md +21 -0
  2. package/README.md +41 -0
  3. package/dist/all-encodings.compressed.json +1 -0
  4. package/dist/courier-bold-oblique.compressed.json +1 -0
  5. package/dist/courier-bold.compressed.json +1 -0
  6. package/dist/courier-oblique.compressed.json +1 -0
  7. package/dist/courier.compressed.json +1 -0
  8. package/dist/encoding.d.ts +31 -0
  9. package/dist/encoding.js +58 -0
  10. package/dist/encoding.js.map +1 -0
  11. package/dist/font.d.ts +99 -0
  12. package/dist/font.js +105 -0
  13. package/dist/font.js.map +1 -0
  14. package/dist/helvetica-bold-oblique.compressed.json +1 -0
  15. package/dist/helvetica-bold.compressed.json +1 -0
  16. package/dist/helvetica-oblique.compressed.json +1 -0
  17. package/dist/helvetica.compressed.json +1 -0
  18. package/dist/index.d.ts +2 -0
  19. package/dist/index.js +3 -0
  20. package/dist/index.js.map +1 -0
  21. package/dist/symbol.compressed.json +1 -0
  22. package/dist/times-bold-italic.compressed.json +1 -0
  23. package/dist/times-bold.compressed.json +1 -0
  24. package/dist/times-italic.compressed.json +1 -0
  25. package/dist/times-roman.compressed.json +1 -0
  26. package/dist/utils.d.ts +2 -0
  27. package/dist/utils.js +17 -0
  28. package/dist/utils.js.map +1 -0
  29. package/dist/zapf-dingbats.compressed.json +1 -0
  30. package/encoding-metrics/all-encodings.compressed.json +1 -0
  31. package/encoding-metrics/all-encodings.json +1 -0
  32. package/encoding-metrics/symbol-encoding.json +1 -0
  33. package/encoding-metrics/symbol.txt +261 -0
  34. package/encoding-metrics/win1252-encoding.json +1 -0
  35. package/encoding-metrics/win1252.txt +279 -0
  36. package/encoding-metrics/zapfdingbats-encoding.json +1 -0
  37. package/encoding-metrics/zapfdingbats.txt +268 -0
  38. package/font-metrics/MustRead.html +19 -0
  39. package/font-metrics/courier-bold-oblique.afm +342 -0
  40. package/font-metrics/courier-bold-oblique.compressed.json +1 -0
  41. package/font-metrics/courier-bold-oblique.json +1 -0
  42. package/font-metrics/courier-bold.afm +342 -0
  43. package/font-metrics/courier-bold.compressed.json +1 -0
  44. package/font-metrics/courier-bold.json +1 -0
  45. package/font-metrics/courier-oblique.afm +342 -0
  46. package/font-metrics/courier-oblique.compressed.json +1 -0
  47. package/font-metrics/courier-oblique.json +1 -0
  48. package/font-metrics/courier.afm +342 -0
  49. package/font-metrics/courier.compressed.json +1 -0
  50. package/font-metrics/courier.json +1 -0
  51. package/font-metrics/helvetica-bold-oblique.afm +2827 -0
  52. package/font-metrics/helvetica-bold-oblique.compressed.json +1 -0
  53. package/font-metrics/helvetica-bold-oblique.json +1 -0
  54. package/font-metrics/helvetica-bold.afm +2827 -0
  55. package/font-metrics/helvetica-bold.compressed.json +1 -0
  56. package/font-metrics/helvetica-bold.json +1 -0
  57. package/font-metrics/helvetica-oblique.afm +3051 -0
  58. package/font-metrics/helvetica-oblique.compressed.json +1 -0
  59. package/font-metrics/helvetica-oblique.json +1 -0
  60. package/font-metrics/helvetica.afm +3051 -0
  61. package/font-metrics/helvetica.compressed.json +1 -0
  62. package/font-metrics/helvetica.json +1 -0
  63. package/font-metrics/symbol.afm +213 -0
  64. package/font-metrics/symbol.compressed.json +1 -0
  65. package/font-metrics/symbol.json +1 -0
  66. package/font-metrics/times-bold-italic.afm +2384 -0
  67. package/font-metrics/times-bold-italic.compressed.json +1 -0
  68. package/font-metrics/times-bold-italic.json +1 -0
  69. package/font-metrics/times-bold.afm +2588 -0
  70. package/font-metrics/times-bold.compressed.json +1 -0
  71. package/font-metrics/times-bold.json +1 -0
  72. package/font-metrics/times-italic.afm +2667 -0
  73. package/font-metrics/times-italic.compressed.json +1 -0
  74. package/font-metrics/times-italic.json +1 -0
  75. package/font-metrics/times-roman.afm +2419 -0
  76. package/font-metrics/times-roman.compressed.json +1 -0
  77. package/font-metrics/times-roman.json +1 -0
  78. package/font-metrics/zapf-dingbats.afm +225 -0
  79. package/font-metrics/zapf-dingbats.compressed.json +1 -0
  80. package/font-metrics/zapf-dingbats.json +1 -0
  81. package/package.json +51 -0
  82. package/scripts/encodings/parse-win1252.ts +120 -0
  83. package/scripts/encodings/parse-zapf-dingbats-or-symbol.ts +22 -0
  84. package/scripts/encodings/parse.ts +72 -0
  85. package/scripts/fonts/parse-character-metrics.ts +73 -0
  86. package/scripts/fonts/parse-font-metrics.ts +95 -0
  87. package/scripts/fonts/parse-kern-pairs.ts +30 -0
  88. package/scripts/fonts/parse.ts +91 -0
  89. package/scripts/fonts/utils.ts +43 -0
  90. package/src/all-encodings.compressed.json +1 -0
  91. package/src/courier-bold-oblique.compressed.json +1 -0
  92. package/src/courier-bold.compressed.json +1 -0
  93. package/src/courier-oblique.compressed.json +1 -0
  94. package/src/courier.compressed.json +1 -0
  95. package/src/encoding.ts +85 -0
  96. package/src/font.ts +164 -0
  97. package/src/helvetica-bold-oblique.compressed.json +1 -0
  98. package/src/helvetica-bold.compressed.json +1 -0
  99. package/src/helvetica-oblique.compressed.json +1 -0
  100. package/src/helvetica.compressed.json +1 -0
  101. package/src/index.ts +2 -0
  102. package/src/symbol.compressed.json +1 -0
  103. package/src/times-bold-italic.compressed.json +1 -0
  104. package/src/times-bold.compressed.json +1 -0
  105. package/src/times-italic.compressed.json +1 -0
  106. package/src/times-roman.compressed.json +1 -0
  107. package/src/utils.ts +20 -0
  108. package/src/zapf-dingbats.compressed.json +1 -0
  109. package/test/all-fonts.test.ts +133 -0
  110. package/test/encoding.test.ts +32 -0
  111. package/test/encodings-async.test.ts +78 -0
  112. package/test/font.test.ts +35 -0
  113. package/test/utils.test.ts +34 -0
  114. package/tsconfig.json +9 -0
  115. package/tsconfig.typecheck.json +14 -0
  116. package/vitest.config.ts +8 -0
package/LICENSE.md ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2018 Andrew Dillon
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,41 @@
1
+ # @chr33s/pdf-standard-fonts
2
+
3
+ > Collection of metrics and encodings for the standard 14 PDF fonts
4
+
5
+ This project is a fork of [`afm`](https://github.com/chbrown/afm) and was created for use in [`@chr33s/pdf`](https://github.com/chr33s/pdf). This forks exists for two primary reasons:
6
+
7
+ 1. The original project did not include mappings from Unicode to WinAnsi/ZapfDingbats/Symbol encodings.
8
+ 2. The font metrics included in the original project were uncompressed (not ideal for usage in `pdf`).
9
+
10
+ ## Usage
11
+ ```js
12
+ import { Font, FontNames, Encodings } from '@chr33s/pdf-standard-fonts';
13
+
14
+ const codePoint = '∑'.charCodeAt(0);
15
+
16
+ const glyph = Encodings.Symbol.encodeUnicodeCodePoint(codePoint);
17
+ glyph // => { code: 229, name: 'summation' }
18
+
19
+ const font = Font.load(FontNames.Symbol);
20
+ const width = font.getWidthOfGlyph(glyph.name);
21
+ width // => 713
22
+ ```
23
+
24
+ ## Installation
25
+ ### NPM Module
26
+ To install the latest stable version:
27
+ ```bash
28
+ npm install --save @chr33s/pdf-standard-fonts
29
+ ```
30
+ This assumes you're using [npm](https://www.npmjs.com/) as your package manager.
31
+
32
+ ### ESM Build
33
+ `@chr33s/pdf-standard-fonts` now ships only native ES modules compiled from the TypeScript sources. The published entry point is `dist/index.js`, which also ships bundled type declarations in `dist/index.d.ts`. Use Node 18+ or a modern bundler (Vite, Rollup, Webpack, etc.) to consume the package, and bundle it for browsers as needed.
34
+
35
+ ## License
36
+ [MIT](https://choosealicense.com/licenses/mit/)
37
+
38
+ ## Original Repo's License
39
+
40
+ Copyright 2015–2018 Christopher Brown.
41
+ [MIT Licensed](https://chbrown.github.io/licenses/MIT/#2015-2018).
@@ -0,0 +1 @@
1
+ "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"
@@ -0,0 +1 @@
1
+ "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"
@@ -0,0 +1 @@
1
+ "eJyFWdtSGzkQ/RWXnnarhtSYW2K/GeMk3hCb2BgSUnmQpfZYi0YadAFMKv++NQNkN6tu5cUFp0etvh61Zr6zsa1rMIEN2eXH6HkFvcN+/2DQO9rvHx+ygr21Jsx4DWzIxjY6BW7vxGrZSqLWv0p6LxJeK737VcYKdgWq2rY7PT82DVwrMTKVBjYsCzb1b9UDyHMVxJYNg4tQsPGWOy4CuCW0KycPAYwEubA1N8/WnZzYBzb8utfvHxR7+0dl8fpwULwp+98KtjISnFYGzq1XQVnDhnv9svyP4GKrxI0B79nwqCzYJTjfPcbK8uBVWZasYDMblHjypNm51oXeH+LPXn/wZlD0+oNB2f32u9+D7vd1byTtGnrLnQ9Q+97UCOsa63gA+arXG2ndW7R6fG8BHtwdyFesYBMjrFSmWootdJHrlCwDN5I7+SJlBRvz5v1zKI+O9wv2+eW/w4NBwUZetCFybHi8PyjYKfz8f69/9LpgyyDfX7Hhm8Puz8srNuyXx0+B/gjBKeHZ8Ot3dvWZDY/bUM3YkPmGC2A/iv/B8CA0r1P8NtoAcq1TiYn1ug1xZVKZtFpzl+INONFWaCLgdQPOcyMJC7pcIfq4A6NhQ4mIZdy3Gv0NskpHn6LC1jVP4e2u2QLifQNOWcQTr7nfpvAjOJui1iBZCvfIk2HrAHl2YyOSgY26Q5716gEB4Q7zDvCYGoUZLKy2iA4PtSJEum3gdNPbyJEarBzwAIibtxF8RxJp7hHbRyl0kkLjFDpNoUkKvU2hdyn0PoWmKfRXCn1IobMU+phCsxSap9B5Cn1KoUUKLVPoIoVWKXSZQlcp9DmFvqTQdQqtHRc3EHDaWHNxQ/Tp8zqSU4RSQjkRERaNLWt7YR3SIh2/4cYgnLNGegzhX6SDEC5AGgphuRRSKfR3CiH0irQwEi2kaxHaa5BQphDCDQi9ILGPKXSXQvcphDDpDiF9vL6IQlhjh2n3fK4ag9KSPOqlvUfijJ/O7XGp24ElLaF2okN5doedHRttnULPA0KLiM6BEUgAu7bxqps4yakFj2YVldZQW4ICWnGn+DdiIvQbpDs2SOGDkSjNSF5V2JH2hKOj2NPA0eYOHCC933DHK8cbjNSi1oB48W9419xnIpyXEiH6mQBCDlqrxiukURtwYWsjNSk+Hfp4aVeOY6MPFzFgg0vH5BsNSDsTfVVz4bAaXjvANpY2cIH3m1TgAPXfoV0oQCqtsQk1moq7WGsekW1sZQ0gLC046gfUeMGOkJHHOrmBWuFD4RlxwM4pHN+g5l5Eje7A8Xi3syXSnZrY11I4or0CV3Mj1xpJ2pTOJxDlx4miifmMApG6L7QFUt0prJq/EJaNcp3BiUWr3KIdsch31y6qRyCncoX3yYoOA6eaYUVYF6kFE3qTU+Esdv/IOipeXlUgW1GUI4g64HhcZlkDNFWjBKNeZLWNKW0Eq04yPOkJNz1JiIrYXdtHMBUiWBBbvMs6GbNNkhOOqJQ6whBB+nqdidzF1jpE2ZzafUHEbUngkrB2RW0Q8crs3m342A04yEw0J0pwROEErdZRB9VoZMyMhIMXhIMNd0FxLdUGuV3taGqYEfuoXLFMsmWWOXVokSDsMBQNUgmdEQGaEoraN2+1Mtjrt7WzN2DQO5CDSnli6n1HJHuaY5RY1xy/ikyImnKEQ5aKzDWx4JqI2PNLLuIV2CQgE8qYJAWd5a1AjX7k6UgJRtT4kKlKIsCPVGtQe8+pjFBHD5UpT+1MOzHPjiWEh6egA5KrgJN0uLcZRqRNq5FXGoqwyObnzAkVeklMOB2P30buAjjEtGWmXvGK/JCt4zMiccFxCTV3iOWQYYUpEaUpVThnhNXWwJZr5GRobyZEg9tcRRlialr9Jn9EfIByqCK41JqXrGJJxYOwzKZunrdcQoV+7bBEisaEEZFkc6kEloZTQpHLejMj8mMJfJEv66x0ROgckRyNz1xzQs9jpkMm1GlP7X2TdYUYBKbZViBMCPnLja3afBuLvR+huTTSImMD9bUqf6HFDvJHwimTVWVNZmZWVI9PYvsd8lvBPoAz51y59uvxtx//ANR8ErY="
@@ -0,0 +1 @@
1
+ "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"
@@ -0,0 +1 @@
1
+ "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"
@@ -0,0 +1,31 @@
1
+ type EncodingCharCode = number;
2
+ type EncodingCharName = string;
3
+ interface UnicodeMappings {
4
+ [unicodeCodePoint: number]: [EncodingCharCode, EncodingCharName];
5
+ }
6
+ type EncodingNames = "Symbol" | "ZapfDingbats" | "WinAnsi";
7
+ declare class Encoding {
8
+ #private;
9
+ name: EncodingNames;
10
+ supportedCodePoints: number[];
11
+ private constructor();
12
+ static create(name: EncodingNames, unicodeMappings: UnicodeMappings): Promise<Encoding>;
13
+ canEncodeUnicodeCodePoint: (codePoint: number) => boolean;
14
+ encodeUnicodeCodePoint: (codePoint: number) => {
15
+ code: number;
16
+ name: string;
17
+ };
18
+ }
19
+ export type EncodingType = Encoding;
20
+ export declare const getEncodings: () => Promise<{
21
+ Symbol: Encoding;
22
+ ZapfDingbats: Encoding;
23
+ WinAnsi: Encoding;
24
+ }>;
25
+ /** @deprecated Use getEncodings() instead for async loading */
26
+ export declare const Encodings: {
27
+ Symbol: Encoding;
28
+ ZapfDingbats: Encoding;
29
+ WinAnsi: Encoding;
30
+ };
31
+ export {};
@@ -0,0 +1,58 @@
1
+ import { decompressJson, padStart } from "./utils.js";
2
+ import AllEncodingsCompressed from "./all-encodings.compressed.json" with { type: "json" };
3
+ let allUnicodeMappings = null;
4
+ const getAllUnicodeMappings = async () => {
5
+ if (allUnicodeMappings)
6
+ return allUnicodeMappings;
7
+ const decompressedEncodings = await decompressJson(AllEncodingsCompressed);
8
+ allUnicodeMappings = JSON.parse(decompressedEncodings);
9
+ return allUnicodeMappings;
10
+ };
11
+ class Encoding {
12
+ name;
13
+ supportedCodePoints = [];
14
+ #unicodeMappings = {};
15
+ constructor(name) {
16
+ this.name = name;
17
+ }
18
+ static async create(name, unicodeMappings) {
19
+ const encoding = new Encoding(name);
20
+ encoding.supportedCodePoints = Object.keys(unicodeMappings)
21
+ .map(Number)
22
+ .sort((a, b) => a - b);
23
+ encoding.#unicodeMappings = unicodeMappings;
24
+ return encoding;
25
+ }
26
+ canEncodeUnicodeCodePoint = (codePoint) => codePoint in this.#unicodeMappings;
27
+ encodeUnicodeCodePoint = (codePoint) => {
28
+ const mapped = this.#unicodeMappings[codePoint];
29
+ if (!mapped) {
30
+ const str = String.fromCharCode(codePoint);
31
+ const hexCode = `0x${padStart(codePoint.toString(16), 4, "0")}`;
32
+ const msg = `${this.name} cannot encode "${str}" (${hexCode})`;
33
+ throw new Error(msg);
34
+ }
35
+ return { code: mapped[0], name: mapped[1] };
36
+ };
37
+ }
38
+ let encodingsCache = null;
39
+ export const getEncodings = async () => {
40
+ if (encodingsCache)
41
+ return encodingsCache;
42
+ const mappings = await getAllUnicodeMappings();
43
+ encodingsCache = {
44
+ Symbol: await Encoding.create("Symbol", mappings.symbol),
45
+ ZapfDingbats: await Encoding.create("ZapfDingbats", mappings.zapfdingbats),
46
+ WinAnsi: await Encoding.create("WinAnsi", mappings.win1252),
47
+ };
48
+ return encodingsCache;
49
+ };
50
+ /** @deprecated Use getEncodings() instead for async loading */
51
+ export const Encodings = {
52
+ Symbol: null,
53
+ ZapfDingbats: null,
54
+ WinAnsi: null,
55
+ };
56
+ // Initialize encodings asynchronously
57
+ void getEncodings().then((e) => Object.assign(Encodings, e));
58
+ //# sourceMappingURL=encoding.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"encoding.js","sourceRoot":"","sources":["../src/encoding.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtD,OAAO,sBAAsB,MAAM,iCAAiC,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AAQ3F,IAAI,kBAAkB,GAIX,IAAI,CAAC;AAEhB,MAAM,qBAAqB,GAAG,KAAK,IAAI,EAAE;IACvC,IAAI,kBAAkB;QAAE,OAAO,kBAAkB,CAAC;IAClD,MAAM,qBAAqB,GAAG,MAAM,cAAc,CAAC,sBAAsB,CAAC,CAAC;IAC3E,kBAAkB,GAAG,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;IACvD,OAAO,kBAAkB,CAAC;AAC5B,CAAC,CAAC;AAIF,MAAM,QAAQ;IACZ,IAAI,CAAgB;IACpB,mBAAmB,GAAa,EAAE,CAAC;IACnC,gBAAgB,GAAoB,EAAE,CAAC;IAEvC,YAAoB,IAAmB;QACrC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAmB,EAAE,eAAgC;QACvE,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;QACpC,QAAQ,CAAC,mBAAmB,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC;aACxD,GAAG,CAAC,MAAM,CAAC;aACX,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACzB,QAAQ,CAAC,gBAAgB,GAAG,eAAe,CAAC;QAC5C,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,yBAAyB,GAAG,CAAC,SAAiB,EAAE,EAAE,CAAC,SAAS,IAAI,IAAI,CAAC,gBAAgB,CAAC;IAEtF,sBAAsB,GAAG,CAAC,SAAiB,EAAE,EAAE;QAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;QAChD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,GAAG,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YAC3C,MAAM,OAAO,GAAG,KAAK,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;YAChE,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,IAAI,mBAAmB,GAAG,MAAM,OAAO,GAAG,CAAC;YAC/D,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;QACvB,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9C,CAAC,CAAC;CACH;AAID,IAAI,cAAc,GAIP,IAAI,CAAC;AAEhB,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,IAAI,EAAE;IACrC,IAAI,cAAc;QAAE,OAAO,cAAc,CAAC;IAC1C,MAAM,QAAQ,GAAG,MAAM,qBAAqB,EAAE,CAAC;IAC/C,cAAc,GAAG;QACf,MAAM,EAAE,MAAM,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,QAAS,CAAC,MAAM,CAAC;QACzD,YAAY,EAAE,MAAM,QAAQ,CAAC,MAAM,CAAC,cAAc,EAAE,QAAS,CAAC,YAAY,CAAC;QAC3E,OAAO,EAAE,MAAM,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,QAAS,CAAC,OAAO,CAAC;KAC7D,CAAC;IACF,OAAO,cAAc,CAAC;AACxB,CAAC,CAAC;AAEF,+DAA+D;AAC/D,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,MAAM,EAAE,IAA2B;IACnC,YAAY,EAAE,IAA2B;IACzC,OAAO,EAAE,IAA2B;CACrC,CAAC;AAEF,sCAAsC;AACtC,KAAK,YAAY,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC"}
package/dist/font.d.ts ADDED
@@ -0,0 +1,99 @@
1
+ declare const compressedJsonForFontName: {
2
+ Courier: string;
3
+ 'Courier-Bold': string;
4
+ 'Courier-Oblique': string;
5
+ 'Courier-BoldOblique': string;
6
+ Helvetica: string;
7
+ 'Helvetica-Bold': string;
8
+ 'Helvetica-Oblique': string;
9
+ 'Helvetica-BoldOblique': string;
10
+ 'Times-Roman': string;
11
+ 'Times-Bold': string;
12
+ 'Times-Italic': string;
13
+ 'Times-BoldItalic': string;
14
+ Symbol: string;
15
+ ZapfDingbats: string;
16
+ };
17
+ declare const fontNames: {
18
+ readonly Courier: "Courier";
19
+ readonly CourierBold: "Courier-Bold";
20
+ readonly CourierOblique: "Courier-Oblique";
21
+ readonly CourierBoldOblique: "Courier-BoldOblique";
22
+ readonly Helvetica: "Helvetica";
23
+ readonly HelveticaBold: "Helvetica-Bold";
24
+ readonly HelveticaOblique: "Helvetica-Oblique";
25
+ readonly HelveticaBoldOblique: "Helvetica-BoldOblique";
26
+ readonly TimesRoman: "Times-Roman";
27
+ readonly TimesRomanBold: "Times-Bold";
28
+ readonly TimesRomanItalic: "Times-Italic";
29
+ readonly TimesRomanBoldItalic: "Times-BoldItalic";
30
+ readonly Symbol: "Symbol";
31
+ readonly ZapfDingbats: "ZapfDingbats";
32
+ };
33
+ export declare const FontNames: {
34
+ readonly Courier: "Courier";
35
+ readonly CourierBold: "Courier-Bold";
36
+ readonly CourierOblique: "Courier-Oblique";
37
+ readonly CourierBoldOblique: "Courier-BoldOblique";
38
+ readonly Helvetica: "Helvetica";
39
+ readonly HelveticaBold: "Helvetica-Bold";
40
+ readonly HelveticaOblique: "Helvetica-Oblique";
41
+ readonly HelveticaBoldOblique: "Helvetica-BoldOblique";
42
+ readonly TimesRoman: "Times-Roman";
43
+ readonly TimesRomanBold: "Times-Bold";
44
+ readonly TimesRomanItalic: "Times-Italic";
45
+ readonly TimesRomanBoldItalic: "Times-BoldItalic";
46
+ readonly Symbol: "Symbol";
47
+ readonly ZapfDingbats: "ZapfDingbats";
48
+ };
49
+ export type FontName = (typeof fontNames)[keyof typeof fontNames];
50
+ export type IFontNames = FontName | keyof typeof compressedJsonForFontName;
51
+ export interface ICharMetrics {
52
+ /** Decimal value of default character code (-1 if not encoded) */
53
+ /** Width of character */
54
+ WX: number;
55
+ /** Character name (aka Glyph name) */
56
+ N: string;
57
+ }
58
+ /**
59
+ * [name_1 name_2 number_x]:
60
+ * Name of the first character in the kerning pair followed by the name of the
61
+ * second character followed by the kerning amount in the x direction
62
+ * (y is zero). The kerning amount is specified in the units of the character
63
+ * coordinate system.
64
+ */
65
+ export type IKernPair = [string, string, number];
66
+ export declare class Font {
67
+ #private;
68
+ static load: (fontName: IFontNames) => Promise<Font>;
69
+ Comment: string;
70
+ FontName: string;
71
+ FullName: string;
72
+ FamilyName: string;
73
+ Weight: string;
74
+ CharacterSet: string;
75
+ Version: string;
76
+ Notice: string;
77
+ EncodingScheme: string;
78
+ ItalicAngle: number;
79
+ UnderlinePosition: number;
80
+ UnderlineThickness: number;
81
+ CapHeight: number | void;
82
+ XHeight: number | void;
83
+ Ascender: number | void;
84
+ Descender: number | void;
85
+ StdHW: number;
86
+ StdVW: number;
87
+ IsFixedPitch: boolean;
88
+ /**
89
+ * [llx lly urx ury]:
90
+ * Font bounding box where llx, lly, urx, and ury are all numbers.
91
+ */
92
+ FontBBox: [number, number, number, number];
93
+ CharMetrics: ICharMetrics[];
94
+ KernPairs: IKernPair[];
95
+ private constructor();
96
+ getWidthOfGlyph: (glyphName: string) => number | void;
97
+ getXAxisKerningForPair: (leftGlyphName: string, rightGlyphName: string) => number | void;
98
+ }
99
+ export {};
package/dist/font.js ADDED
@@ -0,0 +1,105 @@
1
+ import { decompressJson } from "./utils.js";
2
+ import CourierBoldObliqueCompressed from "./courier-bold-oblique.compressed.json" with { type: "json" };
3
+ import CourierBoldCompressed from "./courier-bold.compressed.json" with { type: "json" };
4
+ import CourierObliqueCompressed from "./courier-oblique.compressed.json" with { type: "json" };
5
+ import CourierCompressed from "./courier.compressed.json" with { type: "json" };
6
+ import HelveticaBoldObliqueCompressed from "./helvetica-bold-oblique.compressed.json" with { type: "json" };
7
+ import HelveticaBoldCompressed from "./helvetica-bold.compressed.json" with { type: "json" };
8
+ import HelveticaObliqueCompressed from "./helvetica-oblique.compressed.json" with { type: "json" };
9
+ import HelveticaCompressed from "./helvetica.compressed.json" with { type: "json" };
10
+ import TimesBoldItalicCompressed from "./times-bold-italic.compressed.json" with { type: "json" };
11
+ import TimesBoldCompressed from "./times-bold.compressed.json" with { type: "json" };
12
+ import TimesItalicCompressed from "./times-italic.compressed.json" with { type: "json" };
13
+ import TimesRomanCompressed from "./times-roman.compressed.json" with { type: "json" };
14
+ import SymbolCompressed from "./symbol.compressed.json" with { type: "json" };
15
+ import ZapfDingbatsCompressed from "./zapf-dingbats.compressed.json" with { type: "json" };
16
+ // prettier-ignore
17
+ const compressedJsonForFontName = {
18
+ 'Courier': CourierCompressed,
19
+ 'Courier-Bold': CourierBoldCompressed,
20
+ 'Courier-Oblique': CourierObliqueCompressed,
21
+ 'Courier-BoldOblique': CourierBoldObliqueCompressed,
22
+ 'Helvetica': HelveticaCompressed,
23
+ 'Helvetica-Bold': HelveticaBoldCompressed,
24
+ 'Helvetica-Oblique': HelveticaObliqueCompressed,
25
+ 'Helvetica-BoldOblique': HelveticaBoldObliqueCompressed,
26
+ 'Times-Roman': TimesRomanCompressed,
27
+ 'Times-Bold': TimesBoldCompressed,
28
+ 'Times-Italic': TimesItalicCompressed,
29
+ 'Times-BoldItalic': TimesBoldItalicCompressed,
30
+ 'Symbol': SymbolCompressed,
31
+ 'ZapfDingbats': ZapfDingbatsCompressed,
32
+ };
33
+ const fontNames = {
34
+ Courier: "Courier",
35
+ CourierBold: "Courier-Bold",
36
+ CourierOblique: "Courier-Oblique",
37
+ CourierBoldOblique: "Courier-BoldOblique",
38
+ Helvetica: "Helvetica",
39
+ HelveticaBold: "Helvetica-Bold",
40
+ HelveticaOblique: "Helvetica-Oblique",
41
+ HelveticaBoldOblique: "Helvetica-BoldOblique",
42
+ TimesRoman: "Times-Roman",
43
+ TimesRomanBold: "Times-Bold",
44
+ TimesRomanItalic: "Times-Italic",
45
+ TimesRomanBoldItalic: "Times-BoldItalic",
46
+ Symbol: "Symbol",
47
+ ZapfDingbats: "ZapfDingbats",
48
+ };
49
+ export const FontNames = fontNames;
50
+ const fontCache = {};
51
+ export class Font {
52
+ static load = async (fontName) => {
53
+ const cachedFont = fontCache[fontName];
54
+ if (cachedFont)
55
+ return cachedFont;
56
+ const json = await decompressJson(compressedJsonForFontName[fontName]);
57
+ const font = Object.assign(new Font(), JSON.parse(json));
58
+ const charWidths = {};
59
+ for (const metric of font.CharMetrics) {
60
+ charWidths[metric.N] = metric.WX;
61
+ }
62
+ font.#CharWidths = charWidths;
63
+ const kernPairXAmounts = {};
64
+ for (const [name1, name2, width] of font.KernPairs) {
65
+ if (!kernPairXAmounts[name1])
66
+ kernPairXAmounts[name1] = {};
67
+ kernPairXAmounts[name1][name2] = width;
68
+ }
69
+ font.#KernPairXAmounts = kernPairXAmounts;
70
+ fontCache[fontName] = font;
71
+ return font;
72
+ };
73
+ Comment;
74
+ FontName;
75
+ FullName;
76
+ FamilyName;
77
+ Weight;
78
+ CharacterSet;
79
+ Version;
80
+ Notice;
81
+ EncodingScheme;
82
+ ItalicAngle;
83
+ UnderlinePosition;
84
+ UnderlineThickness;
85
+ CapHeight;
86
+ XHeight;
87
+ Ascender;
88
+ Descender;
89
+ StdHW;
90
+ StdVW;
91
+ IsFixedPitch;
92
+ /**
93
+ * [llx lly urx ury]:
94
+ * Font bounding box where llx, lly, urx, and ury are all numbers.
95
+ */
96
+ FontBBox;
97
+ CharMetrics;
98
+ KernPairs;
99
+ #CharWidths;
100
+ #KernPairXAmounts;
101
+ constructor() { }
102
+ getWidthOfGlyph = (glyphName) => this.#CharWidths[glyphName];
103
+ getXAxisKerningForPair = (leftGlyphName, rightGlyphName) => (this.#KernPairXAmounts[leftGlyphName] || {})[rightGlyphName];
104
+ }
105
+ //# sourceMappingURL=font.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"font.js","sourceRoot":"","sources":["../src/font.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ "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"
@@ -0,0 +1 @@
1
+ "eJyNnd1y20iShV9FwavdCHpWv7bsO3e7e7rbHsuyRdKaib6gSEjimiTUIEEKnph33yCJyjx5MgveG4fxHYisyso6BRSqwH/3fi4Xi2K57r3pDf9Rr8YPxdHZq5OXr4/OL09en/f6vV/L5frjeFH03vR+K+abYj2bjF/8VM6nO62ez1k7Stp4MZs3rPb6vVExe3jcfV974u/r8Xw2ebt8mBe9N8f93u+rX2fPxfTTbD157L1ZV3XR7/38OK7Gk3VRfSl2f/nL87pYTovp53IxXrZl/Omn8rn35l8vTl4d91+cnl72T46Pz/qvX57+2e8NltOims+WxadyNVvPymXvzYuT42MQbh5nk2/LYrXqvbk47veGRbXan9Y7Pj792/Hxca/f+1iuZ5NdZX4un5pqV4ej/5r899HJ68uL/u7fV/t/X+/+fX28//fV0dtpeVccfWlW62KxOvp9OSmrp7Iar4vp346O3s7nR593n7M6+lysimpTTP+mYZytjsZH62o8LRbj6ttReX/0YbYs181T8eK3Yj4/evv3o/Fy+j9ldTRbr45W9d1qNp2Nq1mx+luv3/tlOSmns+XDl8ljsW+BfUm+rMfL6biaJrXX7/08fvqtbZBXJ5f93td0dHF22u+9XU12ga5a8V0hxy9Oj1/1e1/W099GvTcnO/HLejrc/f/8+NBe/yjW1Wyy6r351797o6+9N6evLvu9j703vdXTeFL0/tM/4LOzswMunifz8UL4+avzA/+rLtfF9G4uysXFy4OyrBd3u4Z6WHptWs7n40r45eXrA38qqsku3ZPw6vT0IIwXT0W1Gi+nIkmB9yXYt7gv9dO4Kpbz4j4n0Z+lYoxXu09cfdOCX7bVfZrXK1+ESblYjP1XPDZPj8XSn/5UVLMyqMlqPl49+mB9L6rS03JZeLjeBmeuH6siOPe+rKuAzjbBuavZcwCLTRG0bWFiqukwWwZpNSnn5dLjVbGYWUlaYL6zAUeLv+rx3OOHqhivC63my5OTlDTFam81SXn96qJt+yD73nr0k0c/e/ROv/nlqwP6xRfmV/3DlAp/95/1m0+Y332Y//B/+N5/4wfteink//B/+NGX68pX6JM/69p/1mf/h198uW78Hw78Hw611c7bhh75s756dOu/8Z8++e6q8eRbsTa2ISG/G0++2X7Kf2c9RVJxvJrMZpNZNakXvtXqnW2vJmVV+G/c+5spjPzZ2Nfnzp818WdN/VlB57z3f/jg0aMv8syj//Xf+M2fpV1YhoSF/8alR6VHT0Gv91YfWODKR2LtP6v2f7jxPWHrzwqctFG0u+7Zm74v6i6/bCKcXh6nrKwy53dl43o2n2aH+mm5DczdjM4asfX+Ok2T4yT1uPvdhSH6rNY5Gjvu52U1C/iqyHzKpK6qYjnRAJ6eYbdZzfYXri666aol7lYP9Ww+LxblOr5y2Mn7D/6BbEMviXM/C1hw/VQsp+HlwHT88FAEaXvgeClGFxy7tiuqIuj7T+Nq/FCNn8DULlJm1fN5EfighvduvOqIcLdaxdcK0gBWPzlOf1/M57On1WwVSE9FtX4sa3Ot6IZ9k9zactV4E/SH8aReR5cuey+/nxfPXsv0rMV4UkWXO3dVEX3xtFyPJ6bHqTQrqgIDIEqF/VALW0xn83l0jVovH8ZVvZiP6+BryodyWXwLPm6M9YB2WZicVeGtXvacvWpZWU3vi8XMXBjqFYodZPUCxHL9hiv4hpcX8g2L8WpSz/ErZGQZB4PtdNfpV6tgAJvbL9aRx3K5IimDSj0U1WK8nN7Ng3uI312TqhPYDNTh3+aNDk1ho+rH2dbTqyNfgjRcTGebGSS0/oktmV4wB51Di535o0HXHzWZGKz2917UTaCq/iP1+0xXUZxviDH1B/0bWzptCfoDvQtwX6L3DJOqhJuQ0+TEUUVfnb1KYjvrEXwVuY6OnTYPtJZxXD5GBdDukctRa6p6pR9WR26lcp9mjRXC6awSMiSu5oo9US9f7befv063nuX3YvkQZO5n+xV6FxdVUpOjs5N0Ze5bHkjkajZT1wnXVe9/fOQkqjePZRXU6oq+XcNAvUBu9KjDn6dBjMImvYm+QCMWD277CY5Vvb/KqYLy2hTUKOa4tVUxwUU9X8+e5k1Qrkz3v7EVlER6Glfr2Xg+nd3f+7Zq8tbw0X6PJmyQLNo3OtOsY9TJS5NMfZc5G8xlzEcbIB0Mqf/j9NtitsQ5OLkFqspvxRJvhMQcq+JhtrKXvtpFbWPDcOz7RbrUWNWLxdjcj2iw6RpSOmYmMmUu1f+Z+YN/Ug8/f52uXfczXXYeTOL8y/rRw5+zBjiPfEvqss6YTJEdHXPC29zlQ0dW2gDr/XKua/B3iyvkWiQ39OSG0VXum30/lu/uvCzhETNdFxTzdWDga2PS6onbssMRXdHk4xZ1UJPMGF6G15naF/jiR2af7BXO5dk5+Phf9bhaF9XKf94Xztfz1PjzzEDyvnP8/WAbTm8l5LlOZIrOFtQybJiU5/r4B1tsiUO5LB7HcxgaUiff3ZrYHq5tEQ0B4sv2sklT7QcNmOkKRa5CD9ZMsUJts0atGt+NfAkvECWDw5JLQkyLB3zmoVHKDPk/UyFk4CK3ORc7n84mkdG+sx8EF2Zdl7sf6bJWiptpt8/ded35XW8zn/k2a9L2dkBawH6OGnHHBeUvueGevluniMO7O7kgs1cC8mmdXYEaSPyy85vm5cOuvZdlEO4yb6a1H8dSBi3LdaYnP3Q2bgEjucY8k77LcByXyZ2lv2hWz88Nd7/Uu6eRf/Z774tq+Wk8q3bPkP/Ve7t7Wt3rvzg//rPfHh3cw6BDOS1qTR3h33v9Fxd6dHAVg7BiKFyZz7nyRcCh13BpKkMP/d8g4zxGaUNm2GF2yKBDx0F0bY5uev0Xr/UoxQyRqb0KAxOLQao9IFN74FB7oKn2gKj2oEjtgbX92rC9nSAZ9vovLuVo1Ou/eClHt73+i5MTPUxVQgZlB1z3+i/O9Cj9ISATC+DweUBTLABRLECRWACTWABrY6FkYzJha7TGHvkaNb7k7UnYNQVR5xBOnVQ599SkQHcVRH1WeNhxk3rlP5u7sPCoH4voO7NI1KOFx91aZO7bIlAHF069PPFrj6C/C6JOrzzq+Ukd+IiyBwiPjEBE7wYikSUIj31BZDYHEdghRLA2kTB4RUJgGAmhawhj6xAh8I+k1b4nsZMIj+xExHzPZGMRHruLyGwxIrDPiGDNJuGNT8itP6sJUCYQgQu1ZoAuJIj6t3ByIeXsQkkBFxJELiQ8dKGkXvnPZhcSHrmQiN6FRCIXEh67kMjsQiKQCwknF0r82iNwIUHkQsojF0rqwEeUXUh45EIiehcSiVxIeOxCIrMLicAuJIJ1oYTBhRICF0oIXUgYu5AIgQslrfY9iV1IeORCIuZ7JruQ8NiFRGYXEoFdSATrQglvfEJu/VlNgDKBCFwIQ4NWZDn1dCuSKZHIzmRksCfLyaOsGBqVOeUq831sWVaMfMue4c3L6uRgVoxtzJ7DXmZVMjQrkqsZ8TrDwd8sJ5MjMXI6c8og0y7seVaMjM+e4d3P6mSBVox90J7DZmhVdkSrWls0Gnij4WCQhqNLWoGt0qqBX5oT6kzHZ+e0YmSf9owf+AobqRVjN7XnsKValX3VqtZcjbbJ9Itt5vwmx7viF7iuEvRcpGRUKJHfGondFkTwWqTktCiFPgsnXIXfwx6LUuSwqHt/RZXcFaXYW/EMdlbUyFdRIlcF6Tqk4KhIyU+NFLkpnDAIY89OilLko6h7F0WVPBSl2EHxDPZP1Ng9UbPeCQo4J1DwTaDomojZM1ELHBPkOuyy7JYoRV6JeqcXsE+iFLsknsEeiRo7JGrWH0HZhBm+Dc9tYpqPVOCKbe3REgWRqQgnM1TOTpgUsEFB5IHCQwNM6pX/bLY+4ZHviehNTyRyPOGx3YnMXicCGZ1wcrnErz0CfxNE5qY8crakDnxE2dOER4YmonczkcjKhMc+JjKbmAjsYCJY+0oYvCshMK6E0LWEsWWJEPhV0mrfk9iphEc2JWK+Z7JBCY/dSWS2JhHYl0SwppTwxifk1p/VBCgTiMCFUlnRhpRRD1eBjAgEdiKRwIqUkRepEJqRyFfB57MdqRD5karekFQjR1IhtiTV2ZNUIVNSgVxJhOuAgS8pI2MCIXImkQdBfNmbVIjMSVXvTqqRPakQ+5PqbFCqsEOpYi1KOHiUMDApYehSCtmmVAl8SsQ66GzsVCpEVqVqR/9ls1IhdivV2a5UYb9SxRqW8E2Qq9vgvCZiuZgErpUKhq6ljIxABXItENi1RALXUkaupULoWiJfBZ/PrqVC5FqqetdSjVxLhdi1VGfXUoVcSwVyLRGuAwaupYxcC4TItUQeBPFl11Ihci1VvWupRq6lQuxaqrNrqcKupYp1LeHgWsLAtYShaylk11IlcC0R66CzsWupELmWqh39l11Lhdi1VGfXUoVdSxXrWsI3Qa5ug/OaiOViErhW1b7RQ78uETKBhMmvBLNbtQJ4VSLkVAmHPtWKV+5z2aMSjhwqad6fkkLulHDsTUllZ0qcfClhcqUWXzsCjpQI+ZHgyI1aceBiyE6UcORDSfMulBTyoIRjB0oq+0/i7D6JW+9pKThPS8B3WoKukxB7TuKB47RS7boJu03CkdckLdvn2GcSjl0mqewxibPDJG79paUbl3Vbd07jSVz7wFXaXEdbEUQdVzgZi3J2lqSAtQgibxEemktSr/xns70Ij/xFRG8wIpHDCI8tRmT2GBHIZISTyyR+7RH4jCAyGuWR0yR14CPKXiM8MhsRvduIRHYjPPYbkdlwRGDHEcFaTsLgOQmB6SSEriOMbUeEwHeSVvuexM4jPLIeEfM9k81HeOw+IrP9iMD+I4I1oIQ3PiG3/qwmQJlAeBf6qdffrT/FI/u3e5QcA1AQ0j2Pv8EGco8oSHtG8dkzE5o9Sd1X0a53neiRpJMiU1zgmGBKU3EBUZODIhUBJhUB1lbkQN61cT/XI+um7zDugAJvfUdxB2od9Z2JOzApLrC2uECsbb5ru7wejczRrqO/0qNUO0BQZKWH97Glxt2R9pVrglr/xfAJohgKp0AKj6Ipog+pSBRX4RxcETjCItgwC6ZYJz70aOQRhF4QxV+4b4QkUUsk7JpjvyHQNkdC3ByJc3MkHjZHEoPmSBI3R+KuOZLgmiMJ1BwJc3O0fOjRyCNsjoS4ORIPmqOVuDlaTM3xa9sSl3qUvgpQij8gE3rgUCCgKeCAJNbAJMzA2ggDScFVtKvnqR6lGgBKNQBkagAcagA01QCQ1ACY1ABYWwMgqQaKUmudHAuSlmrZH21TneqRregf2FSAgor+QU0F1Fb0D9NUwKiif0BTAbEV/QMqqkTqqai2R76adaZOdVin2teJL8lACWpbB7WtTW3ft7c8Z3pkr4veuxsd4O4i6D3e3gAKLyTfm5saYOl+BpC9Ftqh/XXLhRzJtZCidAODyFweKcfLI6CyTdRguWpSpNdGyvTaSFi5q4EeSaQV2Ugrx0grlUgr4kiropFWJpFWJJEWVJu41z4/ovuO9+Etx3t/t/E+e6PxPrjHeB/cXrx3dxbv29uFcz2yQ/R7ukloqbm1xX5BAoWA1CgadIoPDJ1AMSI1DhedxJEjmToZqdTfrArJTwL1QlKpQ7Ia9E06xXdTPsH3WDqDOi+p3I9J5i5tZejdJFBHJzXq83SK7/50AjkBqbEp0EnsDySTVZBKrmHVOpdI7CWk/rgjBQ5DJ3R2pIzv0EndHcm5EcnWmKzY5KyH7YpU51wfzBzeBz999yE3c/ehvbxvp50+tJf2l3K0n8g61UPp4sCwXyq2b9Dsvzg5t1LAdY7ng5/e+RDO7Hzwe1QVURA696iKiuHAHZyXFmFg/A5OFoIQJS0XJ6PnxMYHgsOW3/X4weYVRJAEiiOrUTTtORhTq0BkrYDxJYWjTHIQa3tGLuLBWd2nNLlQchvkO3B7Qmuv2AaCKPrKo7gnFSOeGMQ6IYyyMI6vCEFkk5aLqdFzYuMDwREU7mJ31d5gXuiRfeRwhTeYgIIHEFd0gwnUPna4MjeYwOhpwhXcYAJJ46WiGzHzK2xzRKa5VRiazxmZo6/mSGdorvzkzFU4L3MF9776lXLv26JkMdAMgqgthFODCI9aRUTfNCJR+wjnRhKBW0oE21yCqc1w3KEwcOtlxh1Sh/6zRx599Qia1Q1EzH0DJ4laOWFuarOZCtrbcmp0K1LLWzFqfnuGzwGrUyJYkbPBqpwSVrV5YTVKDrevM4oep0nXvs7olGHm+0YZ/jXDIX/i7Y2h6DPJ6JRORuOcgo0okFFIKZ9QomxCKcol1H0moUp5hBJnEWqcQ6jZDEKF8of2sPk4ce7k97D5E4bh94xC+jWkkDHR1q5A8tkCKuUKKJwpaacApIkgyhHhlCDCo+wQ0aeGSJQXwjkpROCMEMGmg2DKBdzsQ2HgLMhs9iF16D975NFXj6DZ3d4Y5r7Bk0StnTA3tb03xxZnhRqeZWp/lqM04HN8NvAZlBQsc26wzinCus0UVilhSL7JxpTTx8lRFtFJw+z3jrLK16wCGcYKJRrLPt/oDEo7Ujn7ZHU/5J0yyjgVKNdUiLJMVZ9fqlFmqcA5pQpnkyo2j5RTBpmNPBwRzprcRh6Wh8HnjwL2NWCQF36/ixN8LohGWSCc2z/dbkLzC6LWF06NLzxqexF904tELS+cG14EbncRbLMLplbHOQgKA7d5Zg6C1KH/7JFHXz2C5naTEsx9YyeJ2jphbuq0agyaWhA1tXBqauFRU4vom1okamrh3NQicFOLYJtaMDU1LvykMHBTZxZ+kjr0nz3y6KtH0NRunSRz39RJoqZOmJr6U9vK7cqET9jCyFLrIqOVdSqYpXWKdW2dMlhCpxDW0CmURXSKUgsC03Uyn3D9CCC7ovGTWz8C3M2rfcL1I4Doecgns34EmHny8QnXjyiS9SOnguwJha+UPEdEFFeqCCtlHhMC9nUtgroWQV1Lk2LyvA9QsOTrEz3ZA2oXen0KnuGBQqu/PuHTOkB2bdcns1LnEP1rs8T02i8xvc4sMb0Ol5he+yWm19klptfBEtPrYInptVtieq1ppNVIVTuQz+3TfDiya3M+u+f2wN3anM/4hB5QuDbns3kWDyw1ESC77Ohz689wlDIfkXFlFQb2yNd3kKnvIKzvwNeXGxKUoL4DWov0GRpSiQ4jn80iw8/tSKHarR2aP9P40NI0iwmtL4hCIjyKi4g+OCJRhITHYRKZYyUCJYhwyhKch2ZE+ZKZhyZ1EKBMrMIcEjEfK84m4d2xcnklAieXCDbD/FS7IMg1nFenszjronn1VkoLiSH1BFE4hUfhFNGHUyQKp/A4nCJzOEWg1BNOqZf4TYAo9ZRHqZfUQYAysQpTT8R8rDj1hHfHyqWeCJx6ItjUw6XtlCGQeri0nc7i1IuWtifJrWM7DQUObcc6tviUIMzxOrZYzYQ8s44tljlV43VsoXqTFTh5u9Y7hOcMskJnzOOktqf8KOYuwa36/4m5T3Yru5S3MiW+WwgSZil2ArcOJPwL1yGyq0AOJ9y0d3+v9Sh9AqB0xwTINApw+AagKfyAJJzAJIbA2sABSfmrSDeo3vi9qTeZbak34Y7UG78Z9Sa7D/Um2IJ643ef3viNpzftneqlHtm9Gjd4pwoo2KtxQ3eqQO1ejRtzpwqM9mrcwJ0qELtX42Z/izGnmqd7Vz2nkH2gN3jrCigZCyKsJXCoJVK4dQWcKg9IKg9MKq/ssXl6LJZ6E3jT3s5qrUrfWmWmacqwaUrfNHw7C0rQaHI7C8i3kNzOKqrska9IZb1chVWxmPkmr01XrL191BmvqEOvqL1X8JJUUAIXqQMXqZ2LbE2DN/bIJ2njMw/3Ir4mREFwexGZRxGK9iKyRLHyexFZ4NjwXkTG5LV4/X5OiFw3vn5n0fuvu35nHjuxv35ngTzZXb8TBxcTRH1FOPm08MgRRPS2IBJ5g3C2ARHYwEWwLi6YjEK3fc6j0JGpJ1z4vsD2Lpw8Xnlg9CLm+1xk+aKR7wtn8xeBR4AkuGEgCaUPBg8IwrtyIBgaRMrkQGaQEDmXIjxcCM+kAg8ciVcBylQ9HkeSGgwmSaq94fCwIrzLOYMBRqSMc2aGGpFzxuoGHRFiY936bGsClOlO0WhkLvRxTLICx9GqPD5ZNYy1PSWIuD2B425VF14ruyBbmUJtRR7J3HTAeSjwqNYxHRCfEoxw8XRArGZGu8x0QCzzyBdPB4Qq2r4VuNNblUdEq4aeaE8JnNGewP5oVWeDVnbjpZVp1LQiG6ZR2dFItOOo3UiX68tuTLUqj6ykRuOrPeVHXhKOtfYMHnGt6sZdK7vR18h+DLab7HLhdOOxVX+cgdHYbE/ozMDcOG1P6k5TN2ZbtTMR3fht1CordIYtM6Kbc6Jx3ZxQ50zYjfFW/fHoE4339oTO0Sc39tuTuocofx1g5a4hapvrA01W6LQGf5UwMCt6Bn4xz8Cv4xlklvAMwtU7A79wZxCs2RkEy3UGbqXOwC/SGbi3oQz8i1DSfDLWNbP1RjnVumvrjYq+/pmtN8o5ErmtNyrYmGS23gin6LgtKy3PbFkhTsHq2rJCYhS2H2xZIZ0C2LllhVQOZceWFdIoqOHujSiCHN5w94ahFNr87g0jRWHt3L1hVAppx+4No3E4s7s3jEKhDLY2+FhxGP3WBkUUwMzWBuVR6PJbG1SioOW2NqjA4Yq3NiimQPGWAAoFhyi7JcApFLDuLQFOjsL3wy0B7gwK5g+2BDidQ9u5JcCpFOjMWvg4rhz2YC08MAp1bi08CFF4O9bCg0Yhza6FB4XDmFkLD5xC55aOc1Q4XPKKbQiXMgqXChQuFaJwqerDpRqFSwUOlyocLlVsuJRTuESgcAnncLVvDoZgJUKhSpgClXAUpqT5ICWFQpQwByhxDk/iNjiJUmhaTIFpKYVl2MMX3A177gV3w557wd3QhQG4u8Ub9twL7oY9/4K7Yc+/4G7Y4xfcDXvuBXdD81rmoX8j8zD3MuZhO0sFRzYVhm4+Crhr6yHOPAEK3xc8NHNMwNL9KSDbvMN2CumlHtlbliFOFgEK5i2GNC0E1M4/DM0EEDCaaRjCVA+QVANF9nZ26JdoD9v5G6104RtHZmoQxe1VhO1lJmIA+2YsgsYqqJsOcXJFs7OUu9MhzqIACu7DhzRfAtTecQ+DmRFQ6N56iHMggOxU7jBYtT0MJyKG7eyDtmzts7HOpF4dpl7tU4+nEUAJkrIOkrI2STlqXQ+ObKlH6HqAgoqMyPWA2oqMjOsBo+KOwPWA2D40MgvuRn6V3SiztG4Urqcb+UV0o+zKuVGwXG7k18iN/MK4Uetd53pkHwaM0LsABQ8FRuRdQO30/8h4FzB6a+0IvAuIncsfgXedAMFZ6FHaXXIhR7K7RJHsLgHk39A24t0lQHF3iWL7iraR3V2iTHeXCBPr0qqWJuFK30nKTI8owx5R+h7B1gVK0FfEugD5jkETtSNyLm23nXOdS/3FuQDZxFOOiadUEk8RP2xSRVNSmaakspSSQhrTnxrf7xvXv29bw2vf1HSLjodMdqQBsxtxQMCdOIBlKw4w3XEDULfcAEx7bgDJjjRlV7I17xatD5ApNXC3t+8WrQ8QNRwoUhlgKS8BpWIrGssAe4vWB8g+LL511gfcXRvcovUBoiuAW2N9wMw8+i1an6LUhS6AmDcz37bed6lH9n7iFr0Pkb+fuCXvQwreB9jeZtwa7wNGtxm3rdFBFcTpkEVbM2/J6xDT1szbwO1Q4l2bt+h3yGiH5m3wMuxbsjxtr9qeVAcVrXMVreOK1kFF2fdQiiqqzofQbk+9lXl6MAP3EMIJ7GnxYwinBu7mHkQ4wfmcfxThFHI89zCCBfA+t8eMeeSC0R4zlsgPc3vMWGZndHvMmJNHJg5GKYjcUjhZpvDIN0X05ikSOahwtlER2EtFsIYqmFxVHzKZrsrPnrgPgM0JIqcVTnarPPBcEb3xquTdVzSyYOHswyKwGSehDCrtbFmE0LJEDXxLNDYvETIOJrqzMVHYtEVg53ZPElkIPDxJdXC6c3MROuMT+bpoufjkHF70bHy814tChk+P/JITRs/8Io2dP/vULzoh8P/ouV+kuVEgfPIXiTQWRM/+Ag1GBKQ0KKAUjQuo+6EBVRodUIoHCDyDxwjUaJhAiUYKkGCwQErjBUo0ZKAUjRqo+4EDVRo7UOLhAzUeQVCzgwgqNI6Yh8HGMYLHxEEHA9NGSmMKSjSsGCkYWVD3g4tR/fiCMg0xKPEogxoPNKCVcUjccINa6Kh4QmCqKLOvopaxVjzFuSuKPAChxmNQtFQg0IKRCNQ6/iM3HqH2owBGoxLKHQHMjU14SlcA/QiFoh2kxr1+T98Ssj/S9/oIss+fVNj9JuHhVx7G7XI1PdJ5nrGf5xmH8zzJ9bBEgqhYwsOyJRUKmNDWo8aXgMsr3Be6LRgWWhAVWnhY6KRCoRPaetT4EnChhftCm7VKUHLLqfhWDOtgToGKGL7N8CZTPq6XFX3lIN2hakipYiiF1YIToFJAtyFtwjJxdVDylUnLfKAmgqgawsM6JBUqkNDWo8aXgMst3Bdaln1AqZVRsVUIyy0yFFzYNmBNUA4uuwq+8LIIAwqvjAqvQlh48/P0bUHNz9Mza4JycOHDn6dvtXahBBQ9ESp4wmGx4Vev2wLCr15b0rjv5uIGv3rdKukNdFBaQVRc4WF58Udy2+Lhj+QSanwJuMzRj+QepLtevzeXb94f6XWCoKiUe0EvbhKqzUfT7+HdZX4P7y78Pbw7/3t4d9nfw7sLfg/vLvg9vDv3e3h3baT1qLFHvg4+jpPdMzsJxO7om9G+RS8QmbTBhyP7XRMffBDsI95JW3AtQWNbckIFb2m6Fnj0CKogKCxNUucBohoJ7/4gqhte21AhuZbRtU0rycZXj6CqgsISJnUeIKqq8O4PoqrifkkqJFc12i+ZpGI6m8/HVFmBWF2FcTlFn4eQK63Kjz6OKy5KExXZVV4VX/3DzVFv9TSe6HqB9obb/2zNqZczmv3Aaa/fm8qX7o/a364FpCY+Nf49TRXVI6mhIqzagaZfx4UvFkTfnvjG//XWoyZAVCLhrlgwPX748sK9kdGOaHYw2x09m6PGHtmCuP59oDRP3xaEJ3ZPLd74v9969OxREyAqZuhFB4lePtCWlbenn1q88X+/9ejZoyZAVNbQTFop2CaSChztEjkNtE3m47YZ/pzhTY5zdXJ3Va3uJ+LaGgVzMKdO2YQftA3pc0ibmFItMjdTSdW5Oa4EKFwLkDbxZ21j/BzjJoO5Kqj5utC2kLYevCvk1OKN//utR88eNQGi8kb3g63E2wPawrrdAafEN8FHbAP2HLAmYlTk8Daw1XiNfltmt0T/lPgm+IhtwJ4D1kSMyhze/R20ezNJnkhhj+xVwb35zVlA/gXG9/zrskDxJ2UV2/ca39sfj1VGby++b+e0T/XIXjLduxls4O5G4x7nqwGFN0X3ZnYamL30use5aEUwBZ0QXTqdWcHQh0NbnehBW20gbUshgTgA1jAg1GYC2sYGSAoAoNRGivSmPZheyE4tpPOgpkJsdQXbOiv2FRfN1V4VFwKRbBwEUzCEU0T8NPBDZhr4oXMa2EIIU/wSiFi0Iet4BUR8hgtf/gUQ8Qk2lJnXP8QqhdWqD7kwcYhJjQKdflLzVI+szfAPaR7ot/TE7UKOrEF/88/XlDvL/maepiniZ0CqqIMqk1klRfKk7ID8WzJigerS9ZaM+BRfw8xbMmI1rnfuLRmxTNHIvCXjoM7N6Dw3Y/Dcj77zcNyd+/ugub/pmWdueub5mx47I4Af718IEQv0VfkXQrQnpN9/2XrUBIg+Pvr92YO0MDOdCz/TucjMdC7Cmc6Fn+lcZGc6F8FM5yKY6Vy4mc6F+dndhf/F3UX4Y7tLeagsR/aqy7+pDLi7xFraB8aCwt+IWNLjYWF0lbU0D4MT2chUjX2SEjxDiZ+eLO0KL4soCLn1XVb04QhWd1keByZa22UFDpFf2WUwBMs/Sl663s7cxw7fd3dCiGIXv++ORR8797475nHs/PvuWODY8fvuCEPscMqFAsGxi6ZckuTeKXQSChzHjncKxacEMY3fKRSrmfhm3ikUyy7W4TuFQhHj7oaQMJSuDbJDSHtCenYGbSCIoi88iruIPuIiUayFx1EWmeMrAkdWBBtTfN54blHjA8ERzD9cLM2TtdKMw2U7Z3AmWmPOpG8p4y9A7yIEX4WTuGf2rMb/IX9z3uFKN8MZcSiIm+E8C85vMp/D5frBuhG4dMWihdOVSKFY4doPQ6lInWs/Spy1IwRFwVm7M3tW4/+QS5BfxUHX4lgKUqAwpECZSGmyn8YlZNkX1MwXMoPCmfnCMzqvCf6Wi9KxbCTddWAZ/MW0ICgBXl/TH/L3R9fXrYSWRAi+PiH4em9cZca4yrxxPZn7gyd/a/AU3hWkCbPcE0ar50T7jJE+StRLVefF/Tp96OH/L85fipr+cGr/SHB6Zhho+sDXYhtHq0UPfe0Zdu7RaCYuQR0qGxbBqUCRlmaDQ80UNjhDt0xbnL4w0uwbS0lLD61j1RQnOsM3fpK0o1S7aXN7ZBtsj+zP3RyQFA5gO//+UsjU6JI+ih6kP1RmKksRzV+JIJve9cNKe+QrEs2cV+HMeeVnzqvszHkVzJxXfua88jPnFc6ca9j+MiesTL1X1lwqzCJE0j4IM7Fcp0c5+wNzlvJNmpisDoYHB2ZCtrJ210J53K5VE0QNJZzSTjnnHj3LT5FMeOrP5FSUNdUaF0GUlMLDaMoKKUrPxMsAZeofZquIPmVForwVHievyJzBIlAaC6dc5rUT3Ax/+VNXPnCc38IpyZVzpqvS1UCa20KixIebBsrkxhPbD4J7gVaR9RwaEUGUDMKpMyjnzsC/VPHS4qk/kztD4tAZBFFnEB7G2v14BH1BGaBM/cPOEP12BEvUGXK/HcEydwb32xHMqTO4346gZvjLn7rygePOIJw6g3LuDKp0NZDmu5CoM8AMFmVy44ntDMH0VVLMpAp2CStwYliVuweprpNYnbqKEae5v3Ldxj+vu4gE7kKdz+uic1x3cg+4YqEzgnEHyz7gik/gztb5gCs+yXW8+AFXrHInNKrrikb9K/dnq1wzuM5pVe6ipLqOSvqP0wD6peVh1+Wp0LD3NTlOnTk3D3rQ7XxRChMivyBRA2Jg5hkgbGqkW+D2aP/bne1GP0G61oc4PSI36lBuoRIZOXKrd+aCJDmI40SAldLde3tbfunFVjnk76bdQn2qR7aDb3DLNKCgo29oizRQ26U3Zks0MHqeuIEt0EBs/9y4N7BtWv860yP70HHjnAq4exi5QU8CREYEir5xTVmyHECpHoro1WVbqNq5ELXmrffjbcaEt6Hzbr3dbrMeuw2MdevddOstdItVO1Tk2ayre/br6p79urrnzLq653Bd3XO8ru7Zr6t7DtbVPQfr6pq2r5zpkc2rBvsKoCDVGuorQG2qNaavANNX+Clr+woQm2ON6yuNaYfGt0Pj26HJtEMTtkMTt0Pj26EJ2qHJtMO+E1zIkXQCRbYTKMdOoFQ6gSLuBKpoJ1AmnUCRdAJB1L/TgIhZJYhSSzjll/AoyUT0mSYSpZtwzjkROPFEsNknmFKQp1koFJAOgigjhVNaKg9yU0SfoCr5LBWNUlU456sInLRm7ubCIkrfzNwNiT6R/dwN8Tilg7kbEii5/dyN5Zzm8JAOMh0pJTtKlO8oRSmPus96VCnxUeLcR43THzXbA1ChTuD3ggSxgnRDSr0BJeoQRgr6BOq+WxjV9wyUqXOgxP0DNe4ioEEvQUodBaWor6Duuwuq1GNQijsNnsH9BjXqOihR7wm2AbVJ8R3XMX93i5e/uxXL3+Nlyt+jtcnfwwXJ390q5O9+6fF3v974O/g4E1todnGHffEDD3eKqwg7OGOqkvPvlstv23pi66W/xGvqpdjXSzRXL1VcvUSy9RJM9RJO9cJNUkVMbf2MZOtoJV9Po7u6WtXV18i2zkaiehsN6v7nf/4P+1XdRg=="
@@ -0,0 +1 @@
1
+ "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"
@@ -0,0 +1 @@
1
+ "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"
@@ -0,0 +1,2 @@
1
+ export * from "./encoding.js";
2
+ export * from "./font.js";
package/dist/index.js ADDED
@@ -0,0 +1,3 @@
1
+ export * from "./encoding.js";
2
+ export * from "./font.js";
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC"}
@@ -0,0 +1 @@
1
+ "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"