缺少PDF格式的Times-Roman字体宽度

时间:2015-08-14 13:03:31

标签: ios pdf fonts

我有一个pdf,其中包含一些字符,如破折号和第8页上的双引号,宽度为0。 它有Times-Roman字体。 我试图使用AFM文件为Times-Roman字体找到宽度,但没有运气。
如何找到这些字符的宽度?

感谢。

1 个答案:

答案 0 :(得分:2)

Times Roman是标准14字体之一。这些字体通常是PDF规范中有关所需数据的例外情况,例如

  

宽度数组(标准14种字体除外;

     

(表111 - 类型1字体字典中的条目 - ISO 32000-1

有关这些字体的部分说明了获取信息的位置:

  

14种Type 1字体的PostScript名称,称为标准14种字体,如下所示:Times-Roman,Helvetica,Courier,Symbol,Times-Bold,Helvetica-Bold,Courier- Bold,ZapfDingbats,Times-Italic,HelveticaOblique,Courier-Oblique,Times-BoldItalic,Helvetica-BoldOblique,Courier-BoldOblique

     

符合本标准的读者可以使用这些字体或其字体指标和合适的替换字体。

     

注意附录D中列出了这些字体的字符集和编码。标​​准14字体的字体度量文件可从ASN网站获得(参见参考书目)。有关字体度量的更多信息,请参阅Adobe技术说明#5004, Adob​​e字体度量文件格式规范

     

(第9.6.2.2节 - 标准类型1字体(标准14字体) - ISO 32000-1

点击了Adobe网站后,ftp://ftp.adobe.com/pub/adobe/type/

显示了字体指标

OP在评论中澄清了他的问题:

  

我尝试使用Adobe的Font度量标准文件来获取宽度值char \ x93,\ x94,\ x96,\ x97,\ x98。但是,AFM文件中不存在这些值。如何找到这些值的宽度?

首先,您必须查找这些值的含义。

您提到问题出现在第8页上,字体为 Times-Roman 。在页8上有 Times-Roman 字体 F28 F46 ,还有 Fimes-Bold 字体的 F43 即可。其他字体是 Courier CMSY10 (TeX Computer Modern Symbol?)。 F28 F43 F46 具有相同的编码条目:

163 0 obj
<</Differences
    [0/.notdef 1/dotaccent/fi/fl/fraction/hungarumlaut/Lslash/lslash/ogonek/ring 10/.notdef 11/breve/minus 13/.notdef 14/Zcaron/zcaron/caron/dotlessi/dotlessj/ff/ffi/ffl 22/.notdef 30/grave/quotesingle/space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/asciicircum/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/braceleft/bar/braceright/asciitilde 127/.notdef 130/quotesinglbase/florin/quotedblbase/ellipsis/dagger/daggerdbl/circumflex/perthousand/Scaron/guilsinglleft/OE 141/.notdef 147/quotedblleft/quotedblright/bullet/endash/emdash/tilde/trademark/scaron/guilsinglright/oe 157/.notdef 159/Ydieresis 160/.notdef 161/exclamdown/cent/sterling/currency/yen/brokenbar/section/dieresis/copyright/ordfeminine/guillemotleft/logicalnot/hyphen/registered/macron/degree/plusminus/twosuperior/threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior/ordmasculine/guillemotright/onequarter/onehalf/threequarters/questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn/germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla/egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis/eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]
  /Type/Encoding>>
endobj 

您正在寻找 \ x93,\ x94,\ x96,\ x97,\ x98 ,即(十进制)147,148,150,151,152。根据编码,尤其是差异部分:

147/quotedblleft/quotedblright/bullet/endash/emdash/tilde

表示 quotedblleft quotedblright endash emdash 代字号 。在字体度量文件中搜索这些名称得到:

C 170 ; WX 444 ; N quotedblleft ; B 43 433 414 676 ;
C 186 ; WX 444 ; N quotedblright ; B 30 433 401 676 ;
C 177 ; WX 500 ; N endash ; B 0 201 500 250 ;
C 208 ; WX 1000 ; N emdash ; B 0 201 1000 250 ;
C 196 ; WX 333 ; N tilde ; B 1 532 331 638 ;

以下是角色的指标,尤其是宽度。