added static font files
authorkramm <kramm>
Tue, 8 May 2007 13:33:58 +0000 (13:33 +0000)
committerkramm <kramm>
Tue, 8 May 2007 13:33:58 +0000 (13:33 +0000)
lib/pdf/GFXOutputDev.cc
lib/pdf/Makefile.in
lib/pdf/fonts.c
lib/pdf/fonts.h

index 94240ac..5f4b111 100644 (file)
@@ -70,6 +70,7 @@
 #include "../devices/arts.h"
 #include "../devices/render.h"
 #include "../png.h"
+#include "fonts.h"
 
 #include <math.h>
 
@@ -87,26 +88,32 @@ static int fontnum = 0;
 
 static char* lastfontdir = 0;
 
-struct mapping {
+struct fontentry {
     char*pdffont;
     char*filename;
+    char*afm;
+    int afmlen;
+    char*pfb;
+    int pfblen;
+    char*fullfilename;
 } pdf2t1map[] ={
-{"Times-Roman",           "n021003l"},
-{"Times-Italic",          "n021023l"},
-{"Times-Bold",            "n021004l"},
-{"Times-BoldItalic",      "n021024l"},
-{"Helvetica",             "n019003l"},
-{"Helvetica-Oblique",     "n019023l"},
-{"Helvetica-Bold",        "n019004l"},
-{"Helvetica-BoldOblique", "n019024l"},
-{"Courier",               "n022003l"},
-{"Courier-Oblique",       "n022023l"},
-{"Courier-Bold",          "n022004l"},
-{"Courier-BoldOblique",   "n022024l"},
-{"Symbol",                "s050000l"},
-{"ZapfDingbats",          "d050000l"}};
-
-static int verbose = 1;
+{"Times-Roman",           "n021003l", n021003l_afm, n021003l_afm_len, n021003l_pfb, n021003l_pfb_len},
+{"Times-Italic",          "n021023l", n021023l_afm, n021023l_afm_len, n021023l_pfb, n021023l_pfb_len},
+{"Times-Bold",            "n021004l", n021004l_afm, n021004l_afm_len, n021004l_pfb, n021004l_pfb_len},
+{"Times-BoldItalic",      "n021024l", n021024l_afm, n021024l_afm_len, n021024l_pfb, n021024l_pfb_len},
+{"Helvetica",             "n019003l", n019003l_afm, n019003l_afm_len, n019003l_pfb, n019003l_pfb_len},
+{"Helvetica-Oblique",     "n019023l", n019023l_afm, n019023l_afm_len, n019023l_pfb, n019023l_pfb_len},
+{"Helvetica-Bold",        "n019004l", n019004l_afm, n019004l_afm_len, n019004l_pfb, n019004l_pfb_len},
+{"Helvetica-BoldOblique", "n019024l", n019024l_afm, n019024l_afm_len, n019024l_pfb, n019024l_pfb_len},
+{"Courier",               "n022003l", n022003l_afm, n022003l_afm_len, n022003l_pfb, n022003l_pfb_len},
+{"Courier-Oblique",       "n022023l", n022023l_afm, n022023l_afm_len, n022023l_pfb, n022023l_pfb_len},
+{"Courier-Bold",          "n022004l", n022004l_afm, n022004l_afm_len, n022004l_pfb, n022004l_pfb_len},
+{"Courier-BoldOblique",   "n022024l", n022024l_afm, n022024l_afm_len, n022024l_pfb, n022024l_pfb_len},
+{"Symbol",                "s050000l", s050000l_afm, s050000l_afm_len, s050000l_pfb, s050000l_pfb_len},
+{"ZapfDingbats",          "d050000l", d050000l_afm, d050000l_afm_len, d050000l_pfb, d050000l_pfb_len}};
+
+
+static int verbose = 0;
 static int dbgindent = 0;
 static void dbg(char*format, ...)
 {
@@ -1423,35 +1430,57 @@ void GFXOutputDev::restoreState(GfxState *state) {
   statepos--;
 }
 
+char* writeOutStdFont(fontentry* f)
+{
+    FILE*fi;
+    char namebuf1[512];
+    char namebuf2[512];
+    char* tmpFileName = mktmpname(namebuf1);
+
+    sprintf(namebuf2, "%s.afm", tmpFileName);
+    fi = fopen(namebuf2, "wb");
+    if(!fi)
+        return 0;
+    fwrite(f->afm, 1, f->afmlen, fi);
+    fclose(fi);
+
+    sprintf(namebuf2, "%s.pfb", tmpFileName);
+    fi = fopen(namebuf2, "wb");
+    if(!fi)
+        return 0;
+    fwrite(f->pfb, 1, f->pfblen, fi);
+    fclose(fi);
+
+    return strdup(namebuf2);
+}
+
 char* GFXOutputDev::searchFont(char*name) 
 {      
     int i;
     char*filename=0;
-    int is_standard_font = 0;
        
     msg("<verbose> SearchFont(%s)", name);
 
     /* see if it is a pdf standard font */
-    for(i=0;i<sizeof(pdf2t1map)/sizeof(mapping);i++) 
+    for(i=0;i<sizeof(pdf2t1map)/sizeof(fontentry);i++) 
     {
        if(!strcmp(name, pdf2t1map[i].pdffont))
        {
-           name = pdf2t1map[i].filename;
-           is_standard_font = 1;
-           break;
+            if(!pdf2t1map[i].fullfilename) {
+                pdf2t1map[i].fullfilename = writeOutStdFont(&pdf2t1map[i]);
+                if(!pdf2t1map[i].fullfilename) {
+                    msg("<error> Couldn't save default font- is the Temp Directory writable?");
+                } else {
+                    msg("<verbose> Storing standard PDF font %s at %s", name, pdf2t1map[i].fullfilename);
+                }
+            }
+           return strdup(pdf2t1map[i].fullfilename);
        }
     }
-    /* look in all font files */
+    /* else look in all font files */
     for(i=0;i<fontnum;i++) 
     {
-       if(strstr(fonts[i].filename, name))
-       {
-           if(!fonts[i].used) {
-
-               fonts[i].used = 1;
-               if(!is_standard_font)
-                   msg("<notice> Using %s for %s", fonts[i].filename, name);
-           }
+       if(strstr(fonts[i].filename, name)) {
            return strdup(fonts[i].filename);
        }
     }
index 9db3112..91ed4d8 100644 (file)
@@ -8,7 +8,7 @@ all: ../libpdf$(A) pdf2swf
 
 libpdf: ../libpdf$(A)
 
-libpdf_objects = GFXOutputDev.$(O) InfoOutputDev.$(O) pdf.$(O)
+libpdf_objects = GFXOutputDev.$(O) InfoOutputDev.$(O) pdf.$(O) fonts.$(O)
 
 xpdf_objects =  xpdf/GHash.$(O) xpdf/GList.$(O) xpdf/GString.$(O) xpdf/gmem.$(O) xpdf/gfile.$(O) \
                  xpdf/FoFiTrueType.$(O) xpdf/FoFiType1.$(O) xpdf/FoFiType1C.$(O) xpdf/FoFiBase.$(O) xpdf/FoFiEncodings.$(O) \
@@ -21,6 +21,8 @@ xpdf_objects =  xpdf/GHash.$(O) xpdf/GList.$(O) xpdf/GString.$(O) xpdf/gmem.$(O)
                  xpdf/GfxState.$(O) xpdf/Function.$(O) xpdf/Annot.$(O) xpdf/NameToCharCode.$(O) xpdf/UnicodeMap.$(O) \
                  xpdf/SecurityHandler.$(O)
 
+fonts.$(O): fonts.c
+       $(C) -I ./ -I xpdf fonts.c -o $@
 cmyk.$(O): cmyk.cc
        $(CC) -I ./ -I xpdf cmyk.cc -o $@
 GFXOutputDev.$(O): GFXOutputDev.cc GFXOutputDev.h
index b159df3..e61ee7c 100644 (file)
@@ -1,3 +1,4 @@
+int d050000l_afm_len = 9381;
 char* d050000l_afm =
 "StartFontMetrics 3.0\nComment Copyright URW Software, Copyright 1997 by URW\nCom"
 "ment Creation Date: 10/19/1999\nComment See the file COPYING (GNU General Public"
@@ -121,6 +122,7 @@ char* d050000l_afm =
 "75 691 ;\nC -1 ; WX 278 ; N .notdef ; B 0 0 0 0 ;\nEndCharMetrics\nEndFontMetric"
 "s\n"
 ;
+int d050000l_pfb_len = 45955;
 char* d050000l_pfb =
 "\x80\x1\xb6\x12\x0\x0%!PS-AdobeFont-1.0: Dingbats 001.005\n%%CreationDate: Tue O"
 "ct 19 1999\n% Copyright URW Software, Copyright 1997 by URW\n% URW Software, Cop"
@@ -1694,6 +1696,7 @@ char* d050000l_pfb =
 "00000000000000000000000000000000000000000000000\r0000000000000000000000000000000"
 "000000000000000000000000000000000\rcleartomark\n\x80\x3"
 ;
+int n019003l_afm_len = 31763;
 char* n019003l_afm =
 "StartFontMetrics 3.0\nComment Copyright (URW)++,Copyright 1999 by (URW)++ Design"
 " & Development\nComment Creation Date: 12/22/1999\nComment See the file COPYING "
@@ -2110,6 +2113,7 @@ char* n019003l_afm =
 " s -12\nKPX y semicolon -27\nKPX zero four -2\nKPX zero one -46\nKPX zero seven "
 "-39\nEndKernPairs\nEndKernData\nEndFontMetrics\n"
 ;
+int n019003l_pfb_len = 36026;
 char* n019003l_pfb =
 "\x80\x1]\x6\x0\x0%!PS-AdobeFont-1.0: NimbusSanL-Regu 1.05\n%%CreationDate: Wed D"
 "ec 22 1999\n% Copyright (URW)++,Copyright 1999 by (URW)++ Design & Development\n"
@@ -3387,6 +3391,7 @@ char* n019003l_pfb =
 "00000000000000000000000000000000000000000000000000\r0000000000000000000000000000"
 "000000000000000000000000000000000000\rcleartomark\n\x80\x3"
 ;
+int n019004l_afm_len = 31595;
 char* n019004l_afm =
 "StartFontMetrics 3.0\nComment Copyright (URW)++,Copyright 1999 by (URW)++ Design"
 " & Development\nComment Creation Date: 12/22/1999\nComment See the file COPYING "
@@ -3801,6 +3806,7 @@ char* n019004l_afm =
 "X y semicolon -33\nKPX zero four 5\nKPX zero one -19\nKPX zero seven -10\nEndKer"
 "nPairs\nEndKernData\nEndFontMetrics\n"
 ;
+int n019004l_pfb_len = 35941;
 char* n019004l_pfb =
 "\x80\x1W\x6\x0\x0%!PS-AdobeFont-1.0: NimbusSanL-Bold 1.05\n%%CreationDate: Wed D"
 "ec 22 1999\n% Copyright (URW)++,Copyright 1999 by (URW)++ Design & Development\n"
@@ -5077,6 +5083,7 @@ char* n019004l_pfb =
 "00000000000000000000000000000000000000000000000000000000\r0000000000000000000000"
 "000000000000000000000000000000000000000000\rcleartomark\n\x80\x3"
 ;
+int n019023l_afm_len = 32114;
 char* n019023l_afm =
 "StartFontMetrics 3.0\nComment Copyright (URW)++,Copyright 1999 by (URW)++ Design"
 " & Development\nComment Creation Date: 12/22/1999\nComment See the file COPYING "
@@ -5497,6 +5504,7 @@ char* n019023l_afm =
 "30\nKPX y period -80\nKPX y s -23\nKPX y semicolon -40\nKPX zero four -11\nKPX z"
 "ero one -56\nKPX zero seven -50\nEndKernPairs\nEndKernData\nEndFontMetrics\n"
 ;
+int n019023l_pfb_len = 38314;
 char* n019023l_pfb =
 "\x80\x1n\x6\x0\x0%!PS-AdobeFont-1.0: NimbusSanL-ReguItal 1.05\n%%CreationDate: W"
 "ed Dec 22 1999\n% Copyright (URW)++,Copyright 1999 by (URW)++ Design & Developme"
@@ -6850,6 +6858,7 @@ char* n019023l_pfb =
 "0000000000000000000000000000000000000000000000000000000\r00000000000000000000000"
 "00000000000000000000000000000000000000000\rcleartomark\n\x80\x3"
 ;
+int n019024l_afm_len = 31901;
 char* n019024l_afm =
 "StartFontMetrics 3.0\nComment Copyright (URW)++,Copyright 1999 by (URW)++ Design"
 " & Development\nComment Creation Date: 12/22/1999\nComment See the file COPYING "
@@ -7268,6 +7277,7 @@ char* n019024l_afm =
 "-43\nKPX zero four -3\nKPX zero one -29\nKPX zero seven -21\nEndKernPairs\nEndKe"
 "rnData\nEndFontMetrics\n"
 ;
+int n019024l_pfb_len = 39013;
 char* n019024l_pfb =
 "\x80\x1h\x6\x0\x0%!PS-AdobeFont-1.0: NimbusSanL-BoldItal 1.05\n%%CreationDate: W"
 "ed Dec 22 1999\n% Copyright (URW)++,Copyright 1999 by (URW)++ Design & Developme"
@@ -8652,6 +8662,7 @@ char* n019024l_pfb =
 "0000000000000000000000000000000000000000\r00000000000000000000000000000000000000"
 "00000000000000000000000000\rcleartomark\n\x80\x3"
 ;
+int n021003l_afm_len = 31943;
 char* n021003l_afm =
 "StartFontMetrics 3.0\nComment Copyright (URW)++,Copyright 1999 by (URW)++ Design"
 " & Development\nComment Creation Date: 12/22/1999\nComment See the file COPYING "
@@ -9070,6 +9081,7 @@ char* n021003l_afm =
 "X y period -73\nKPX y s -26\nKPX y semicolon -23\nKPX zero four 12\nKPX zero one"
 " -55\nKPX zero seven -5\nEndKernPairs\nEndKernData\nEndFontMetrics\n"
 ;
+int n021003l_pfb_len = 46026;
 char* n021003l_pfb =
 "\x80\x1m\x6\x0\x0%!PS-AdobeFont-1.0: NimbusRomNo9L-Regu 1.05\n%%CreationDate: We"
 "d Dec 22 1999\n% Copyright (URW)++,Copyright 1999 by (URW)++ Design & Developmen"
@@ -10718,6 +10730,7 @@ char* n021003l_pfb =
 "0000000000000000000000000000000000000000000000000000\r00000000000000000000000000"
 "00000000000000000000000000000000000000\rcleartomark\n\x80\x3"
 ;
+int n021004l_afm_len = 31889;
 char* n021004l_afm =
 "StartFontMetrics 3.0\nComment Copyright (URW)++,Copyright 1999 by (URW)++ Design"
 " & Development\nComment Creation Date: 12/22/1999\nComment See the file COPYING "
@@ -11136,6 +11149,7 @@ char* n021004l_afm =
 "KPX zero four 11\nKPX zero one -31\nKPX zero seven 7\nEndKernPairs\nEndKernData\n"
 "EndFontMetrics\n"
 ;
+int n021004l_pfb_len = 44729;
 char* n021004l_pfb =
 "\x80\x1i\x6\x0\x0%!PS-AdobeFont-1.0: NimbusRomNo9L-Medi 1.05\n%%CreationDate: We"
 "d Dec 22 1999\n% Copyright (URW)++,Copyright 1999 by (URW)++ Design & Developmen"
@@ -12732,6 +12746,7 @@ char* n021004l_pfb =
 "00000000000000000000000000000000000000000000000\r0000000000000000000000000000000"
 "000000000000000000000000000000000\rcleartomark\n\x80\x3"
 ;
+int n021023l_afm_len = 31920;
 char* n021023l_afm =
 "StartFontMetrics 3.0\nComment Copyright (URW)++,Copyright 1999 by (URW)++ Design"
 " & Development\nComment Creation Date: 12/22/1999\nComment See the file COPYING "
@@ -13150,6 +13165,7 @@ char* n021023l_afm =
 " y s -19\nKPX y semicolon -45\nKPX zero four 14\nKPX zero one -50\nKPX zero seve"
 "n -3\nEndKernPairs\nEndKernData\nEndFontMetrics\n"
 ;
+int n021023l_pfb_len = 45458;
 char* n021023l_pfb =
 "\x80\x1~\x6\x0\x0%!PS-AdobeFont-1.0: NimbusRomNo9L-ReguItal 1.05\n%%CreationDate"
 ": Wed Dec 22 1999\n% Copyright (URW)++,Copyright 1999 by (URW)++ Design & Develo"
@@ -14775,6 +14791,7 @@ char* n021023l_pfb =
 "000000000000000000000000000000000000000000000000000000\r000000000000000000000000"
 "0000000000000000000000000000000000000000\rcleartomark\n\x80\x3"
 ;
+int n021024l_afm_len = 32028;
 char* n021024l_afm =
 "StartFontMetrics 3.0\nComment Copyright (URW)++,Copyright 1999 by (URW)++ Design"
 " & Development\nComment Creation Date: 12/22/1999\nComment See the file COPYING "
@@ -15194,6 +15211,7 @@ char* n021024l_afm =
 "7\nKPX y period -26\nKPX y s -13\nKPX y semicolon -44\nKPX zero four -1\nKPX zer"
 "o one -50\nKPX zero seven -12\nEndKernPairs\nEndKernData\nEndFontMetrics\n"
 ;
+int n021024l_pfb_len = 44656;
 char* n021024l_pfb =
 "\x80\x1y\x6\x0\x0%!PS-AdobeFont-1.0: NimbusRomNo9L-MediItal 1.05\n%%CreationDate"
 ": Wed Dec 22 1999\n% Copyright (URW)++,Copyright 1999 by (URW)++ Design & Develo"
@@ -16784,6 +16802,7 @@ char* n021024l_pfb =
 "000000000000000000000000000000000000000000000000000000000\r000000000000000000000"
 "0000000000000000000000000000000000000000000\rcleartomark\n\x80\x3"
 ;
+int n022003l_afm_len = 31926;
 char* n022003l_afm =
 "StartFontMetrics 3.0\nComment Copyright (URW)++,Copyright 1999 by (URW)++ Design"
 " & Development\nComment Creation Date: 12/22/1999\nComment See the file COPYING "
@@ -17202,6 +17221,7 @@ char* n022003l_afm =
 "X y s -30\nKPX y semicolon -72\nKPX zero four -58\nKPX zero one -81\nKPX zero se"
 "ven -73\nEndKernPairs\nEndKernData\nEndFontMetrics\n"
 ;
+int n022003l_pfb_len = 45758;
 char* n022003l_pfb =
 "\x80\x1[\x6\x0\x0%!PS-AdobeFont-1.0: NimbusMonL-Regu 1.05\n%%CreationDate: Wed D"
 "ec 22 1999\n% Copyright (URW)++,Copyright 1999 by (URW)++ Design & Development\n"
@@ -18836,6 +18856,7 @@ char* n022003l_pfb =
 "00000000000000000000000000000000000000000000000000000000\r0000000000000000000000"
 "000000000000000000000000000000000000000000\rcleartomark\n\x80\x3"
 ;
+int n022004l_afm_len = 31779;
 char* n022004l_afm =
 "StartFontMetrics 3.0\nComment Copyright (URW)++,Copyright 1999 by (URW)++ Design"
 " & Development\nComment Creation Date: 12/22/1999\nComment See the file COPYING "
@@ -19252,6 +19273,7 @@ char* n022004l_afm =
 "eriod -155\nKPX y s -21\nKPX y semicolon -79\nKPX zero four -59\nKPX zero one -7"
 "6\nKPX zero seven -68\nEndKernPairs\nEndKernData\nEndFontMetrics\n"
 ;
+int n022004l_pfb_len = 50493;
 char* n022004l_pfb =
 "\x80\x1U\x6\x0\x0%!PS-AdobeFont-1.0: NimbusMonL-Bold 1.05\n%%CreationDate: Wed D"
 "ec 22 1999\n% Copyright (URW)++,Copyright 1999 by (URW)++ Design & Development\n"
@@ -21053,6 +21075,7 @@ char* n022004l_pfb =
 "00000000000000000000000000000000000000000000000\r0000000000000000000000000000000"
 "000000000000000000000000000000000\rcleartomark\n\x80\x3"
 ;
+int n022023l_afm_len = 32136;
 char* n022023l_afm =
 "StartFontMetrics 3.0\nComment Copyright (URW)++,Copyright 1999 by (URW)++ Design"
 " & Development\nComment Creation Date: 12/22/1999\nComment See the file COPYING "
@@ -21474,6 +21497,7 @@ char* n022023l_afm =
 "KPX zero four -64\nKPX zero one -91\nKPX zero seven -82\nEndKernPairs\nEndKernDa"
 "ta\nEndFontMetrics\n"
 ;
+int n022023l_pfb_len = 44404;
 char* n022023l_pfb =
 "\x80\x1m\x6\x0\x0%!PS-AdobeFont-1.0: NimbusMonL-ReguObli 1.05\n%%CreationDate: W"
 "ed Dec 22 1999\n% Copyright (URW)++,Copyright 1999 by (URW)++ Design & Developme"
@@ -23062,6 +23086,7 @@ char* n022023l_pfb =
 "000000000000000000000000000000000000000000\r000000000000000000000000000000000000"
 "0000000000000000000000000000\rcleartomark\n\x80\x3"
 ;
+int n022024l_afm_len = 31961;
 char* n022024l_afm =
 "StartFontMetrics 3.0\nComment Copyright (URW)++,Copyright 1999 by (URW)++ Design"
 " & Development\nComment Creation Date: 12/22/1999\nComment See the file COPYING "
@@ -23481,6 +23506,7 @@ char* n022024l_afm =
 "-65\nKPX zero one -81\nKPX zero seven -79\nEndKernPairs\nEndKernData\nEndFontMet"
 "rics\n"
 ;
+int n022024l_pfb_len = 51527;
 char* n022024l_pfb =
 "\x80\x1g\x6\x0\x0%!PS-AdobeFont-1.0: NimbusMonL-BoldObli 1.05\n%%CreationDate: W"
 "ed Dec 22 1999\n% Copyright (URW)++,Copyright 1999 by (URW)++ Design & Developme"
@@ -25326,6 +25352,7 @@ char* n022024l_pfb =
 "00000000000000000000000000000000000000000\r0000000000000000000000000000000000000"
 "000000000000000000000000000\rcleartomark\n\x80\x3"
 ;
+int s050000l_afm_len = 9686;
 char* s050000l_afm =
 "StartFontMetrics 3.0\nComment Copyright URW Software, Copyright 1997 by URW\nCom"
 "ment Creation Date: 10/21/1999\nComment See the file COPYING (GNU General Public"
@@ -25452,6 +25479,7 @@ char* s050000l_afm =
 " 935 ;\nC 254 ; WX 494 ; N bracerightbt ; B 17 -70 255 926 ;\nC -1 ; WX 250 ; N "
 ".notdef ; B 0 0 0 0 ;\nEndCharMetrics\nEndFontMetrics\n"
 ;
+int s050000l_pfb_len = 33709;
 char* s050000l_pfb =
 "\x80\x1\xfb\x15\x0\x0%!PS-AdobeFont-1.0: StandardSymL 001.005\n%%CreationDate: T"
 "hu Oct 21 1999\n% Copyright URW Software, Copyright 1997 by URW\n% URW Software,"
index 3e08c80..79a897f 100644 (file)
@@ -6,33 +6,61 @@ extern "C" {
 #endif
 
 extern char* d050000l_afm;
+extern int d050000l_afm_len;
 extern char* d050000l_pfb;
+extern int d050000l_pfb_len;
 extern char* n019003l_afm;
+extern int n019003l_afm_len;
 extern char* n019003l_pfb;
+extern int n019003l_pfb_len;
 extern char* n019004l_afm;
+extern int n019004l_afm_len;
 extern char* n019004l_pfb;
+extern int n019004l_pfb_len;
 extern char* n019023l_afm;
+extern int n019023l_afm_len;
 extern char* n019023l_pfb;
+extern int n019023l_pfb_len;
 extern char* n019024l_afm;
+extern int n019024l_afm_len;
 extern char* n019024l_pfb;
+extern int n019024l_pfb_len;
 extern char* n021003l_afm;
+extern int n021003l_afm_len;
 extern char* n021003l_pfb;
+extern int n021003l_pfb_len;
 extern char* n021004l_afm;
+extern int n021004l_afm_len;
 extern char* n021004l_pfb;
+extern int n021004l_pfb_len;
 extern char* n021023l_afm;
+extern int n021023l_afm_len;
 extern char* n021023l_pfb;
+extern int n021023l_pfb_len;
 extern char* n021024l_afm;
+extern int n021024l_afm_len;
 extern char* n021024l_pfb;
+extern int n021024l_pfb_len;
 extern char* n022003l_afm;
+extern int n022003l_afm_len;
 extern char* n022003l_pfb;
+extern int n022003l_pfb_len;
 extern char* n022004l_afm;
+extern int n022004l_afm_len;
 extern char* n022004l_pfb;
+extern int n022004l_pfb_len;
 extern char* n022023l_afm;
+extern int n022023l_afm_len;
 extern char* n022023l_pfb;
+extern int n022023l_pfb_len;
 extern char* n022024l_afm;
+extern int n022024l_afm_len;
 extern char* n022024l_pfb;
+extern int n022024l_pfb_len;
 extern char* s050000l_afm;
+extern int s050000l_afm_len;
 extern char* s050000l_pfb;
+extern int s050000l_pfb_len;
 
 #ifdef __cplusplus
 }