Font metrics for the “base 14” fonts in the PDF specification

前端 未结 3 704
南笙
南笙 2021-02-05 13:01

I\'ve been writing software to parse content from PDFs, specifically text broken into regions. For this I need font metrics such as glyph displacements, font-wide ascent, descen

相关标签:
3条回答
  • 2021-02-05 13:12

    I'm sure those font metrics are widely available. For instance, in my Ubuntu they're in /usr/share/fonts/type1/gsfonts/ -- maybe you don't recognize some of the font names, but they're metrically compatible to Helvetica etc.

    0 讨论(0)
  • 2021-02-05 13:16

    On Linux (and probably on Mac OS X too) you can easily use the font2afm script which creates font metrics files from PostScript or TrueType fonts (.pfa, .pfb, .ttf, .otf).

    If you don't have the original Base 14 available, you can use the clones provided by Ghostscript. These clones may use completely different font names, but they can only be clones by using the very same metrics for each glyph.

    Here is a Ghostscript commandline, that lists you all the base 14 fontnames:

    Windows:

    gswin32c.exe -q -dNODISPLAY -dSAFER -c "systemdict /.standardfonts get == quit"
    

    Linux/Unix/Mac:

    gs -q -dNODISPLAY -dSAFER -c "systemdict /.standardfonts get == quit"
    

    In recent versions of Ghostscript, the filenames for cloned fonts usually match the clone's fontname. Older GS versions may have used more cryptic nameing conventions. Here is the list of fontname mappings to the cloned fonts:

    +===============+========================+==========================+
    | Base 14 name  | Ghostscript name       | Font filename (older GS) |
    +===============+========================+==========================+
    | Courier       |                        |                          |
    |    standard   | NimbusMonL-Regu        | n022003l.pfb             |
    |    bold       | NimbusMonL-Bold        | n022004l.pfb             |
    |    italic     | NimbusMonL-ReguObli    | n022023l.pfb             |
    |    bolditalic | NimbusMonL-BoldObli    | n022024l.pfb             |
    +---------------+------------------------+--------------------------+
    | Helvetica     |                        |                          |
    |    standard   | NimbusSanL-Regu        | n019003l.pfb             |
    |    bold       | NimbusSanL-Bold        | n019004l.pfb             |
    |    italic     | NimbusSanL-ReguItal    | n019023l.pfb             |
    |    bolditalic | NimbusSanL-BoldItal    | n019024l.pfb             |
    +---------------+------------------------+--------------------------+
    | Times-Roman   |                        |                          |
    |    standard   | NimbusRomNo9L-Regu     | n021003l.pfb             |
    |    bold       | NimbusRomNo9L-Medi     | n021004l.pfb             |
    |    italic     | NimbusRomNo9L-ReguItal | n021023l.pfb             |
    |    bolditalic | NimbusRomNo9L-MediItal | n021024l.pfb             |
    +---------------+------------------------+--------------------------+
    | Symbol        | StandardSymL           | s050000l.pfb             |
    +---------------+------------------------+--------------------------+
    | ZapfDingbats  | Dingbats               | d050000l.pfb             |
    +---------------+------------------------+--------------------------+
    

    You can download the Ghostscript fonts from many places on the 'net (f.e. from here). Then run f.e. this command:

    font2afm StandardSymL.ttf
    

    and the resulting file, StandardSymL.afm should contain the font metrics for the Symbol font in standard .afm format....

    0 讨论(0)
  • 2021-02-05 13:24

    Meanwhile I've found these links on an Adobe Website, which contain the information asked for:

    • Font Metrics for Base 14 fonts (Windows)
    • Font Metrics for Base 14 fonts (UNIX)
    • Font Metrics for Base 14 fonts (Macintosh)
    0 讨论(0)
提交回复
热议问题