Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 我的PDF的字体名称中有哪些额外字符?_C#_Visual Studio 2010_Itextsharp - Fatal编程技术网

C# 我的PDF的字体名称中有哪些额外字符?

C# 我的PDF的字体名称中有哪些额外字符?,c#,visual-studio-2010,itextsharp,C#,Visual Studio 2010,Itextsharp,当从pdf中提取字体名称时,我会得到一些垃圾字符,后跟加号,然后是字体样式的字体名称。我想删除垃圾字符。只有很少的pdf文件我得到垃圾字符。示例:MMLPEO+无噪音 string curFont = renderInfo.GetFont().PostscriptFontName; “垃圾”字符表示字体未完全嵌入。 您将找到诸如ABC123+RemingTonoIsless、XYZ456+RemingTonoIsless等名称。。。 这意味着PDF中可能存在相同字体的不同子集 有关说明,请参阅

当从pdf中提取字体名称时,我会得到一些垃圾字符,后跟加号,然后是字体样式的字体名称。我想删除垃圾字符。只有很少的pdf文件我得到垃圾字符。示例:MMLPEO+无噪音

string curFont = renderInfo.GetFont().PostscriptFontName;
“垃圾”字符表示字体未完全嵌入。 您将找到诸如ABC123+RemingTonoIsless、XYZ456+RemingTonoIsless等名称。。。 这意味着PDF中可能存在相同字体的不同子集


有关说明,请参阅PDF规范第9.6.4节字体子集:

对于字体子集,字体的PostScript名称(字体的BaseFont条目值和字体描述符的FontName条目值)应 以标记开头,后跟加号(+)。标签应由六个大写字母组成;字母的选择是任意的, 但同一PDF文件中的不同子集应具有不同的标签

示例EOODIA+诗意a是诗意a®(类型1字体)子集的名称

换句话说:这些角色不仅仅是“垃圾”。 如果你想删除它们,那是很简单的,只要使用适当的字符串操作方法,
但请注意,删除它们会丢弃在某些情况下可能有用的信息。

有关解释,请参阅PDF规范第9.6.4节字体子集:

对于字体子集,字体的PostScript名称(字体的BaseFont项的值和字体描述符的FontName项)应以一个标记开头,后跟一个加号(+)。标签应由六个大写字母组成;字母的选择是任意的,但同一PDF文件中的不同子集应具有不同的标记

示例EOODIA+诗意a是诗意a®(类型1字体)子集的名称


因此,这些字符不是垃圾,它们是一个标签。

意味着在PDF中有相同字体的不同子集-不一定有,只是可能有。嗯,这也可以称为挑剔…;)+1-我应该引用ISO-32000-1;我目前正在维也纳讨论ISO-32000-2和相关标准。@BrunoLowagie非常感谢您提供的信息。很抱歉使用“垃圾”@mkl谢谢你提供的信息。抱歉使用“垃圾”