在哪里可以找到Adobe-Identity-UCS cmap文件?

时间:2018-07-31 10:10:49

标签: pdf itext adobe pdfbox

我有一个pdf文件,无法通过pdfbox或itext7提取文本。字体由Identity-H和Adobe-Identity-UCS编码。 ToUnicode的详细信息在下面给出。


    /CIDInit /ProcSet findresource begin

    12 dict begin

    begincmap

    /CIDSystemInfo > def
    /CMapName /Adobe-Identity-UCS def
    /CMapType 2 def

    1 begincodespacerange
    <0000><FFFF>
    endcodespacerange

    endcmap
    CMapName currentdict /CMap defineresource pop
    end
    end

ToUnicode无效。有什么办法可以解决吗?

我试图下载完整的Adobe-Identity-UCS cmap文件并替换它。但是经过大量Google搜索后,我找不到Adobe-Identity-UCS cmap文件。

有帮助吗?谢谢。

编辑:

Chinese-cidmap-broken.pdf

1 个答案:

答案 0 :(得分:3)

您显示的 ToUnicode CMap对应于PDF规范ISO 32000中的示例 ToUnicode CMap(任一部分),只是没有任何 bfrange bfchar 部分。

因此,您实际上拥有的是一个模板,可以在其中放置任意映射

因此,关于您的问题:

  

有什么办法可以解决?

是,不是。

是的,您可以通过添加具有正确映射的相应 bfrange bfchar 部分来解决此问题。

但是...要做的是,您需要知道手头的字体分别将哪些代码映射到哪些Unicode字符串,名称 Adob​​e-Identity-UCS 本身通常并不意味着映射。也是如此:

否,并非没有其他信息。

@Tilman在对您引用的one of his answers问题的评论中,他展示了如何使用从不同来源收集的实际映射信息来添加丢失的 ToUnicode 映射。