pdf.js/src/core/standard_fonts.js
Jonas Jenwald 9acfe486d4 Fallback to font name matching, when checking for serif fonts (issue 13845)
In order to handle fonts that specify completely bogus /Flags-entries, fallback to font name matching to determine if the font is a serif one.
2021-09-23 01:11:57 +02:00

850 lines
19 KiB
JavaScript

/* Copyright 2015 Mozilla Foundation
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { getLookupTableFactory } from "./core_utils.js";
import { normalizeFontName } from "./fonts_utils.js";
/**
* Hold a map of decoded fonts and of the standard fourteen Type1
* fonts and their acronyms.
*/
const getStdFontMap = getLookupTableFactory(function (t) {
// The standard 14 fonts:
t["Times-Roman"] = "Times-Roman";
t.Helvetica = "Helvetica";
t.Courier = "Courier";
t.Symbol = "Symbol";
t["Times-Bold"] = "Times-Bold";
t["Helvetica-Bold"] = "Helvetica-Bold";
t["Courier-Bold"] = "Courier-Bold";
t.ZapfDingbats = "ZapfDingbats";
t["Times-Italic"] = "Times-Italic";
t["Helvetica-Oblique"] = "Helvetica-Oblique";
t["Courier-Oblique"] = "Courier-Oblique";
t["Times-BoldItalic"] = "Times-BoldItalic";
t["Helvetica-BoldOblique"] = "Helvetica-BoldOblique";
t["Courier-BoldOblique"] = "Courier-BoldOblique";
// Extra mappings
t.ArialNarrow = "Helvetica";
t["ArialNarrow-Bold"] = "Helvetica-Bold";
t["ArialNarrow-BoldItalic"] = "Helvetica-BoldOblique";
t["ArialNarrow-Italic"] = "Helvetica-Oblique";
t.ArialBlack = "Helvetica";
t["ArialBlack-Bold"] = "Helvetica-Bold";
t["ArialBlack-BoldItalic"] = "Helvetica-BoldOblique";
t["ArialBlack-Italic"] = "Helvetica-Oblique";
t["Arial-Black"] = "Helvetica";
t["Arial-Black-Bold"] = "Helvetica-Bold";
t["Arial-Black-BoldItalic"] = "Helvetica-BoldOblique";
t["Arial-Black-Italic"] = "Helvetica-Oblique";
t.Arial = "Helvetica";
t["Arial-Bold"] = "Helvetica-Bold";
t["Arial-BoldItalic"] = "Helvetica-BoldOblique";
t["Arial-Italic"] = "Helvetica-Oblique";
t["Arial-BoldItalicMT"] = "Helvetica-BoldOblique";
t["Arial-BoldMT"] = "Helvetica-Bold";
t["Arial-ItalicMT"] = "Helvetica-Oblique";
t.ArialMT = "Helvetica";
t["Courier-BoldItalic"] = "Courier-BoldOblique";
t["Courier-Italic"] = "Courier-Oblique";
t.CourierNew = "Courier";
t["CourierNew-Bold"] = "Courier-Bold";
t["CourierNew-BoldItalic"] = "Courier-BoldOblique";
t["CourierNew-Italic"] = "Courier-Oblique";
t["CourierNewPS-BoldItalicMT"] = "Courier-BoldOblique";
t["CourierNewPS-BoldMT"] = "Courier-Bold";
t["CourierNewPS-ItalicMT"] = "Courier-Oblique";
t.CourierNewPSMT = "Courier";
t["Helvetica-BoldItalic"] = "Helvetica-BoldOblique";
t["Helvetica-Italic"] = "Helvetica-Oblique";
t["Symbol-Bold"] = "Symbol";
t["Symbol-BoldItalic"] = "Symbol";
t["Symbol-Italic"] = "Symbol";
t.TimesNewRoman = "Times-Roman";
t["TimesNewRoman-Bold"] = "Times-Bold";
t["TimesNewRoman-BoldItalic"] = "Times-BoldItalic";
t["TimesNewRoman-Italic"] = "Times-Italic";
t.TimesNewRomanPS = "Times-Roman";
t["TimesNewRomanPS-Bold"] = "Times-Bold";
t["TimesNewRomanPS-BoldItalic"] = "Times-BoldItalic";
t["TimesNewRomanPS-BoldItalicMT"] = "Times-BoldItalic";
t["TimesNewRomanPS-BoldMT"] = "Times-Bold";
t["TimesNewRomanPS-Italic"] = "Times-Italic";
t["TimesNewRomanPS-ItalicMT"] = "Times-Italic";
t.TimesNewRomanPSMT = "Times-Roman";
t["TimesNewRomanPSMT-Bold"] = "Times-Bold";
t["TimesNewRomanPSMT-BoldItalic"] = "Times-BoldItalic";
t["TimesNewRomanPSMT-Italic"] = "Times-Italic";
});
// Contains mapping for standard fonts and xfa fonts.
const getFontNameToFileMap = getLookupTableFactory(function (t) {
t.Courier = "FoxitFixed.pfb";
t["Courier-Bold"] = "FoxitFixedBold.pfb";
t["Courier-BoldOblique"] = "FoxitFixedBoldItalic.pfb";
t["Courier-Oblique"] = "FoxitFixedItalic.pfb";
t.Helvetica = "FoxitSans.pfb";
t["Helvetica-Bold"] = "FoxitSansBold.pfb";
t["Helvetica-BoldOblique"] = "FoxitSansBoldItalic.pfb";
t["Helvetica-Oblique"] = "FoxitSansItalic.pfb";
t["Times-Roman"] = "FoxitSerif.pfb";
t["Times-Bold"] = "FoxitSerifBold.pfb";
t["Times-BoldItalic"] = "FoxitSerifBoldItalic.pfb";
t["Times-Italic"] = "FoxitSerifItalic.pfb";
t.Symbol = "FoxitSymbol.pfb";
t.ZapfDingbats = "FoxitDingbats.pfb";
t["LiberationSans-Regular"] = "LiberationSans-Regular.ttf";
t["LiberationSans-Bold"] = "LiberationSans-Bold.ttf";
t["LiberationSans-Italic"] = "LiberationSans-Italic.ttf";
t["LiberationSans-BoldItalic"] = "LiberationSans-BoldItalic.ttf";
});
/**
* Holds the map of the non-standard fonts that might be included as
* a standard fonts without glyph data.
*/
const getNonStdFontMap = getLookupTableFactory(function (t) {
t.Calibri = "Helvetica";
t["Calibri-Bold"] = "Helvetica-Bold";
t["Calibri-BoldItalic"] = "Helvetica-BoldOblique";
t["Calibri-Italic"] = "Helvetica-Oblique";
t.CenturyGothic = "Helvetica";
t["CenturyGothic-Bold"] = "Helvetica-Bold";
t["CenturyGothic-BoldItalic"] = "Helvetica-BoldOblique";
t["CenturyGothic-Italic"] = "Helvetica-Oblique";
t.ComicSansMS = "Comic Sans MS";
t["ComicSansMS-Bold"] = "Comic Sans MS-Bold";
t["ComicSansMS-BoldItalic"] = "Comic Sans MS-BoldItalic";
t["ComicSansMS-Italic"] = "Comic Sans MS-Italic";
t["ItcSymbol-Bold"] = "Helvetica-Bold";
t["ItcSymbol-BoldItalic"] = "Helvetica-BoldOblique";
t["ItcSymbol-Book"] = "Helvetica";
t["ItcSymbol-BookItalic"] = "Helvetica-Oblique";
t["ItcSymbol-Medium"] = "Helvetica";
t["ItcSymbol-MediumItalic"] = "Helvetica-Oblique";
t.LucidaConsole = "Courier";
t["LucidaConsole-Bold"] = "Courier-Bold";
t["LucidaConsole-BoldItalic"] = "Courier-BoldOblique";
t["LucidaConsole-Italic"] = "Courier-Oblique";
t["LucidaSans-Demi"] = "Helvetica-Bold";
t["MS-Gothic"] = "MS Gothic";
t["MS-Gothic-Bold"] = "MS Gothic-Bold";
t["MS-Gothic-BoldItalic"] = "MS Gothic-BoldItalic";
t["MS-Gothic-Italic"] = "MS Gothic-Italic";
t["MS-Mincho"] = "MS Mincho";
t["MS-Mincho-Bold"] = "MS Mincho-Bold";
t["MS-Mincho-BoldItalic"] = "MS Mincho-BoldItalic";
t["MS-Mincho-Italic"] = "MS Mincho-Italic";
t["MS-PGothic"] = "MS PGothic";
t["MS-PGothic-Bold"] = "MS PGothic-Bold";
t["MS-PGothic-BoldItalic"] = "MS PGothic-BoldItalic";
t["MS-PGothic-Italic"] = "MS PGothic-Italic";
t["MS-PMincho"] = "MS PMincho";
t["MS-PMincho-Bold"] = "MS PMincho-Bold";
t["MS-PMincho-BoldItalic"] = "MS PMincho-BoldItalic";
t["MS-PMincho-Italic"] = "MS PMincho-Italic";
t.NuptialScript = "Times-Italic";
t.SegoeUISymbol = "Helvetica";
t.Wingdings = "ZapfDingbats";
t["Wingdings-Regular"] = "ZapfDingbats";
});
const getSerifFonts = getLookupTableFactory(function (t) {
t["Adobe Jenson"] = true;
t["Adobe Text"] = true;
t.Albertus = true;
t.Aldus = true;
t.Alexandria = true;
t.Algerian = true;
t["American Typewriter"] = true;
t.Antiqua = true;
t.Apex = true;
t.Arno = true;
t.Aster = true;
t.Aurora = true;
t.Baskerville = true;
t.Bell = true;
t.Bembo = true;
t["Bembo Schoolbook"] = true;
t.Benguiat = true;
t["Berkeley Old Style"] = true;
t["Bernhard Modern"] = true;
t["Berthold City"] = true;
t.Bodoni = true;
t["Bauer Bodoni"] = true;
t["Book Antiqua"] = true;
t.Bookman = true;
t["Bordeaux Roman"] = true;
t["Californian FB"] = true;
t.Calisto = true;
t.Calvert = true;
t.Capitals = true;
t.Cambria = true;
t.Cartier = true;
t.Caslon = true;
t.Catull = true;
t.Centaur = true;
t["Century Old Style"] = true;
t["Century Schoolbook"] = true;
t.Chaparral = true;
t["Charis SIL"] = true;
t.Cheltenham = true;
t["Cholla Slab"] = true;
t.Clarendon = true;
t.Clearface = true;
t.Cochin = true;
t.Colonna = true;
t["Computer Modern"] = true;
t["Concrete Roman"] = true;
t.Constantia = true;
t["Cooper Black"] = true;
t.Corona = true;
t.Ecotype = true;
t.Egyptienne = true;
t.Elephant = true;
t.Excelsior = true;
t.Fairfield = true;
t["FF Scala"] = true;
t.Folkard = true;
t.Footlight = true;
t.FreeSerif = true;
t["Friz Quadrata"] = true;
t.Garamond = true;
t.Gentium = true;
t.Georgia = true;
t.Gloucester = true;
t["Goudy Old Style"] = true;
t["Goudy Schoolbook"] = true;
t["Goudy Pro Font"] = true;
t.Granjon = true;
t["Guardian Egyptian"] = true;
t.Heather = true;
t.Hercules = true;
t["High Tower Text"] = true;
t.Hiroshige = true;
t["Hoefler Text"] = true;
t["Humana Serif"] = true;
t.Imprint = true;
t["Ionic No. 5"] = true;
t.Janson = true;
t.Joanna = true;
t.Korinna = true;
t.Lexicon = true;
t.LiberationSerif = true;
t["Liberation Serif"] = true;
t["Linux Libertine"] = true;
t.Literaturnaya = true;
t.Lucida = true;
t["Lucida Bright"] = true;
t.Melior = true;
t.Memphis = true;
t.Miller = true;
t.Minion = true;
t.Modern = true;
t["Mona Lisa"] = true;
t["Mrs Eaves"] = true;
t["MS Serif"] = true;
t["Museo Slab"] = true;
t["New York"] = true;
t["Nimbus Roman"] = true;
t["NPS Rawlinson Roadway"] = true;
t.NuptialScript = true;
t.Palatino = true;
t.Perpetua = true;
t.Plantin = true;
t["Plantin Schoolbook"] = true;
t.Playbill = true;
t["Poor Richard"] = true;
t["Rawlinson Roadway"] = true;
t.Renault = true;
t.Requiem = true;
t.Rockwell = true;
t.Roman = true;
t["Rotis Serif"] = true;
t.Sabon = true;
t.Scala = true;
t.Seagull = true;
t.Sistina = true;
t.Souvenir = true;
t.STIX = true;
t["Stone Informal"] = true;
t["Stone Serif"] = true;
t.Sylfaen = true;
t.Times = true;
t.Trajan = true;
t["Trinité"] = true;
t["Trump Mediaeval"] = true;
t.Utopia = true;
t["Vale Type"] = true;
t["Bitstream Vera"] = true;
t["Vera Serif"] = true;
t.Versailles = true;
t.Wanted = true;
t.Weiss = true;
t["Wide Latin"] = true;
t.Windsor = true;
t.XITS = true;
});
const getSymbolsFonts = getLookupTableFactory(function (t) {
t.Dingbats = true;
t.Symbol = true;
t.ZapfDingbats = true;
});
// Glyph map for well-known standard fonts. Sometimes Ghostscript uses CID
// fonts, but does not embed the CID to GID mapping. The mapping is incomplete
// for all glyphs, but common for some set of the standard fonts.
const getGlyphMapForStandardFonts = getLookupTableFactory(function (t) {
t[2] = 10;
t[3] = 32;
t[4] = 33;
t[5] = 34;
t[6] = 35;
t[7] = 36;
t[8] = 37;
t[9] = 38;
t[10] = 39;
t[11] = 40;
t[12] = 41;
t[13] = 42;
t[14] = 43;
t[15] = 44;
t[16] = 45;
t[17] = 46;
t[18] = 47;
t[19] = 48;
t[20] = 49;
t[21] = 50;
t[22] = 51;
t[23] = 52;
t[24] = 53;
t[25] = 54;
t[26] = 55;
t[27] = 56;
t[28] = 57;
t[29] = 58;
t[30] = 894;
t[31] = 60;
t[32] = 61;
t[33] = 62;
t[34] = 63;
t[35] = 64;
t[36] = 65;
t[37] = 66;
t[38] = 67;
t[39] = 68;
t[40] = 69;
t[41] = 70;
t[42] = 71;
t[43] = 72;
t[44] = 73;
t[45] = 74;
t[46] = 75;
t[47] = 76;
t[48] = 77;
t[49] = 78;
t[50] = 79;
t[51] = 80;
t[52] = 81;
t[53] = 82;
t[54] = 83;
t[55] = 84;
t[56] = 85;
t[57] = 86;
t[58] = 87;
t[59] = 88;
t[60] = 89;
t[61] = 90;
t[62] = 91;
t[63] = 92;
t[64] = 93;
t[65] = 94;
t[66] = 95;
t[67] = 96;
t[68] = 97;
t[69] = 98;
t[70] = 99;
t[71] = 100;
t[72] = 101;
t[73] = 102;
t[74] = 103;
t[75] = 104;
t[76] = 105;
t[77] = 106;
t[78] = 107;
t[79] = 108;
t[80] = 109;
t[81] = 110;
t[82] = 111;
t[83] = 112;
t[84] = 113;
t[85] = 114;
t[86] = 115;
t[87] = 116;
t[88] = 117;
t[89] = 118;
t[90] = 119;
t[91] = 120;
t[92] = 121;
t[93] = 122;
t[94] = 123;
t[95] = 124;
t[96] = 125;
t[97] = 126;
t[98] = 196;
t[99] = 197;
t[100] = 199;
t[101] = 201;
t[102] = 209;
t[103] = 214;
t[104] = 220;
t[105] = 225;
t[106] = 224;
t[107] = 226;
t[108] = 228;
t[109] = 227;
t[110] = 229;
t[111] = 231;
t[112] = 233;
t[113] = 232;
t[114] = 234;
t[115] = 235;
t[116] = 237;
t[117] = 236;
t[118] = 238;
t[119] = 239;
t[120] = 241;
t[121] = 243;
t[122] = 242;
t[123] = 244;
t[124] = 246;
t[125] = 245;
t[126] = 250;
t[127] = 249;
t[128] = 251;
t[129] = 252;
t[130] = 8224;
t[131] = 176;
t[132] = 162;
t[133] = 163;
t[134] = 167;
t[135] = 8226;
t[136] = 182;
t[137] = 223;
t[138] = 174;
t[139] = 169;
t[140] = 8482;
t[141] = 180;
t[142] = 168;
t[143] = 8800;
t[144] = 198;
t[145] = 216;
t[146] = 8734;
t[147] = 177;
t[148] = 8804;
t[149] = 8805;
t[150] = 165;
t[151] = 181;
t[152] = 8706;
t[153] = 8721;
t[154] = 8719;
t[156] = 8747;
t[157] = 170;
t[158] = 186;
t[159] = 8486;
t[160] = 230;
t[161] = 248;
t[162] = 191;
t[163] = 161;
t[164] = 172;
t[165] = 8730;
t[166] = 402;
t[167] = 8776;
t[168] = 8710;
t[169] = 171;
t[170] = 187;
t[171] = 8230;
t[200] = 193;
t[203] = 205;
t[210] = 218;
t[223] = 711;
t[224] = 321;
t[225] = 322;
t[226] = 352;
t[227] = 353;
t[228] = 381;
t[229] = 382;
t[233] = 221;
t[234] = 253;
t[252] = 263;
t[253] = 268;
t[254] = 269;
t[258] = 258;
t[260] = 260;
t[261] = 261;
t[265] = 280;
t[266] = 281;
t[267] = 282;
t[268] = 283;
t[269] = 313;
t[275] = 323;
t[276] = 324;
t[278] = 328;
t[283] = 344;
t[284] = 345;
t[285] = 346;
t[286] = 347;
t[292] = 367;
t[295] = 377;
t[296] = 378;
t[298] = 380;
t[305] = 963;
t[306] = 964;
t[307] = 966;
t[308] = 8215;
t[309] = 8252;
t[310] = 8319;
t[311] = 8359;
t[312] = 8592;
t[313] = 8593;
t[337] = 9552;
t[493] = 1039;
t[494] = 1040;
t[705] = 1524;
t[706] = 8362;
t[710] = 64288;
t[711] = 64298;
t[759] = 1617;
t[761] = 1776;
t[763] = 1778;
t[775] = 1652;
t[777] = 1764;
t[778] = 1780;
t[779] = 1781;
t[780] = 1782;
t[782] = 771;
t[783] = 64726;
t[786] = 8363;
t[788] = 8532;
t[790] = 768;
t[791] = 769;
t[792] = 768;
t[795] = 803;
t[797] = 64336;
t[798] = 64337;
t[799] = 64342;
t[800] = 64343;
t[801] = 64344;
t[802] = 64345;
t[803] = 64362;
t[804] = 64363;
t[805] = 64364;
t[2424] = 7821;
t[2425] = 7822;
t[2426] = 7823;
t[2427] = 7824;
t[2428] = 7825;
t[2429] = 7826;
t[2430] = 7827;
t[2433] = 7682;
t[2678] = 8045;
t[2679] = 8046;
t[2830] = 1552;
t[2838] = 686;
t[2840] = 751;
t[2842] = 753;
t[2843] = 754;
t[2844] = 755;
t[2846] = 757;
t[2856] = 767;
t[2857] = 848;
t[2858] = 849;
t[2862] = 853;
t[2863] = 854;
t[2864] = 855;
t[2865] = 861;
t[2866] = 862;
t[2906] = 7460;
t[2908] = 7462;
t[2909] = 7463;
t[2910] = 7464;
t[2912] = 7466;
t[2913] = 7467;
t[2914] = 7468;
t[2916] = 7470;
t[2917] = 7471;
t[2918] = 7472;
t[2920] = 7474;
t[2921] = 7475;
t[2922] = 7476;
t[2924] = 7478;
t[2925] = 7479;
t[2926] = 7480;
t[2928] = 7482;
t[2929] = 7483;
t[2930] = 7484;
t[2932] = 7486;
t[2933] = 7487;
t[2934] = 7488;
t[2936] = 7490;
t[2937] = 7491;
t[2938] = 7492;
t[2940] = 7494;
t[2941] = 7495;
t[2942] = 7496;
t[2944] = 7498;
t[2946] = 7500;
t[2948] = 7502;
t[2950] = 7504;
t[2951] = 7505;
t[2952] = 7506;
t[2954] = 7508;
t[2955] = 7509;
t[2956] = 7510;
t[2958] = 7512;
t[2959] = 7513;
t[2960] = 7514;
t[2962] = 7516;
t[2963] = 7517;
t[2964] = 7518;
t[2966] = 7520;
t[2967] = 7521;
t[2968] = 7522;
t[2970] = 7524;
t[2971] = 7525;
t[2972] = 7526;
t[2974] = 7528;
t[2975] = 7529;
t[2976] = 7530;
t[2978] = 1537;
t[2979] = 1538;
t[2980] = 1539;
t[2982] = 1549;
t[2983] = 1551;
t[2984] = 1552;
t[2986] = 1554;
t[2987] = 1555;
t[2988] = 1556;
t[2990] = 1623;
t[2991] = 1624;
t[2995] = 1775;
t[2999] = 1791;
t[3002] = 64290;
t[3003] = 64291;
t[3004] = 64292;
t[3006] = 64294;
t[3007] = 64295;
t[3008] = 64296;
t[3011] = 1900;
t[3014] = 8223;
t[3015] = 8244;
t[3017] = 7532;
t[3018] = 7533;
t[3019] = 7534;
t[3075] = 7590;
t[3076] = 7591;
t[3079] = 7594;
t[3080] = 7595;
t[3083] = 7598;
t[3084] = 7599;
t[3087] = 7602;
t[3088] = 7603;
t[3091] = 7606;
t[3092] = 7607;
t[3095] = 7610;
t[3096] = 7611;
t[3099] = 7614;
t[3100] = 7615;
t[3103] = 7618;
t[3104] = 7619;
t[3107] = 8337;
t[3108] = 8338;
t[3116] = 1884;
t[3119] = 1885;
t[3120] = 1885;
t[3123] = 1886;
t[3124] = 1886;
t[3127] = 1887;
t[3128] = 1887;
t[3131] = 1888;
t[3132] = 1888;
t[3135] = 1889;
t[3136] = 1889;
t[3139] = 1890;
t[3140] = 1890;
t[3143] = 1891;
t[3144] = 1891;
t[3147] = 1892;
t[3148] = 1892;
t[3153] = 580;
t[3154] = 581;
t[3157] = 584;
t[3158] = 585;
t[3161] = 588;
t[3162] = 589;
t[3165] = 891;
t[3166] = 892;
t[3169] = 1274;
t[3170] = 1275;
t[3173] = 1278;
t[3174] = 1279;
t[3181] = 7622;
t[3182] = 7623;
t[3282] = 11799;
t[3316] = 578;
t[3379] = 42785;
t[3393] = 1159;
t[3416] = 8377;
});
// The glyph map for ArialBlack differs slightly from the glyph map used for
// other well-known standard fonts. Hence we use this (incomplete) CID to GID
// mapping to adjust the glyph map for non-embedded ArialBlack fonts.
const getSupplementalGlyphMapForArialBlack = getLookupTableFactory(function (
t
) {
t[227] = 322;
t[264] = 261;
t[291] = 346;
});
// The glyph map for Calibri (a Windows font) differs from the glyph map used
// in the standard fonts. Hence we use this (incomplete) CID to GID mapping to
// adjust the glyph map for non-embedded Calibri fonts.
const getSupplementalGlyphMapForCalibri = getLookupTableFactory(function (t) {
t[1] = 32;
t[4] = 65;
t[6] = 193;
t[17] = 66;
t[18] = 67;
t[21] = 268;
t[24] = 68;
t[28] = 69;
t[30] = 201;
t[32] = 282;
t[38] = 70;
t[39] = 71;
t[44] = 72;
t[47] = 73;
t[49] = 205;
t[58] = 74;
t[60] = 75;
t[62] = 76;
t[68] = 77;
t[69] = 78;
t[75] = 79;
t[87] = 80;
t[89] = 81;
t[90] = 82;
t[92] = 344;
t[94] = 83;
t[97] = 352;
t[100] = 84;
t[104] = 85;
t[115] = 86;
t[116] = 87;
t[121] = 88;
t[122] = 89;
t[124] = 221;
t[127] = 90;
t[129] = 381;
t[258] = 97;
t[260] = 225;
t[268] = 261;
t[271] = 98;
t[272] = 99;
t[273] = 263;
t[275] = 269;
t[282] = 100;
t[286] = 101;
t[288] = 233;
t[290] = 283;
t[295] = 281;
t[296] = 102;
t[336] = 103;
t[346] = 104;
t[349] = 105;
t[351] = 237;
t[361] = 106;
t[364] = 107;
t[367] = 108;
t[371] = 322;
t[373] = 109;
t[374] = 110;
t[381] = 111;
t[383] = 243;
t[393] = 112;
t[395] = 113;
t[396] = 114;
t[398] = 345;
t[400] = 115;
t[401] = 347;
t[403] = 353;
t[410] = 116;
t[437] = 117;
t[448] = 118;
t[449] = 119;
t[454] = 120;
t[455] = 121;
t[457] = 253;
t[460] = 122;
t[462] = 382;
t[463] = 380;
t[853] = 44;
t[855] = 58;
t[856] = 46;
t[876] = 47;
t[878] = 45;
t[882] = 45;
t[894] = 40;
t[895] = 41;
t[896] = 91;
t[897] = 93;
t[923] = 64;
t[1004] = 48;
t[1005] = 49;
t[1006] = 50;
t[1007] = 51;
t[1008] = 52;
t[1009] = 53;
t[1010] = 54;
t[1011] = 55;
t[1012] = 56;
t[1013] = 57;
t[1081] = 37;
t[1085] = 43;
t[1086] = 45;
});
function getStandardFontName(name) {
const fontName = normalizeFontName(name);
const stdFontMap = getStdFontMap();
return stdFontMap[fontName];
}
export {
getFontNameToFileMap,
getGlyphMapForStandardFonts,
getNonStdFontMap,
getSerifFonts,
getStandardFontName,
getStdFontMap,
getSupplementalGlyphMapForArialBlack,
getSupplementalGlyphMapForCalibri,
getSymbolsFonts,
};