我一直在編寫軟件來解析PDF中的內容,特別是文本分解爲區域。爲此,我需要諸如字形位移,字體寬度上升,下降和字形邊界框等字體度量。簡而言之,PDF中字體定義的FontDescriptor字典中應該可用的度量類型。PDF規範中「base 14」字體的字體指標
不幸的是,FontDescriptor不必被包含在基本字體爲標準字體的「基本14」集合之一的字體中。
我在哪裏可以找到或如何生成基本14種字體的字體指標?
我一直在編寫軟件來解析PDF中的內容,特別是文本分解爲區域。爲此,我需要諸如字形位移,字體寬度上升,下降和字形邊界框等字體度量。簡而言之,PDF中字體定義的FontDescriptor字典中應該可用的度量類型。PDF規範中「base 14」字體的字體指標
不幸的是,FontDescriptor不必被包含在基本字體爲標準字體的「基本14」集合之一的字體中。
我在哪裏可以找到或如何生成基本14種字體的字體指標?
在Linux上(也可能在Mac OS X上)您可以輕鬆使用font2afm
腳本,該腳本從PostScript或TrueType字體(.pfa,.pfb,.ttf,.otf)創建字體指標文件。
如果您沒有原始可用底座14,則可以使用Ghostscript提供的克隆。這些克隆可能會使用完全不同的字體名稱,但它們只能通過對每個字形使用完全相同的度量來進行克隆。
這裏是一個Ghostscript的命令行,列出你所有的基地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"
在最近版本的Ghostscript,克隆字體的文件名通常與克隆的fontna匹配我。較早的GS版本可能使用了更加神祕的命名規則。下面是字體名映射到克隆的字體列表:
+===============+========================+==========================+
| 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 |
+---------------+------------------------+--------------------------+
您可以(從here遠東)下載從許多地方的Ghostscript的字體的「網。然後運行f.e.這個命令:
font2afm StandardSymL.ttf
和生成的文件,StandardSymL.afm
應該包含的字體度量標準.afm格式符號字體....
我確定那些字體指標是廣泛可用的。例如,在我的Ubuntu中,它們在/usr/share/fonts/type1/gsfonts/
- 也許你不認識一些字體名稱,但它們與Helvetica等度量兼容。