代码之家  ›  专栏  ›  技术社区  ›  Felix D.

ghostpcl创建无效的pdf

  •  1
  • Felix D.  · 技术社区  · 8 年前

    我刚下载了 GhostPCL 是的。

    我是这样打电话的 GhostPCL 以下内容:

    > gpcl6win64.exe -sDEVICE=pdfwrite -o C:\temp\output.pdf C:\temp\input.spl
    

    Input/Output 以下内容: Get it from my DropBox

    生成的 pdf 好像坏了。

    我无法按预期选择文本

    enter image description here

    当我将所选内容复制到记事本时,它如下所示:

    PDF-Content

    我是不是漏掉了什么东西,还是有个窃听器 鬼怪 是吗?

    1 回复  |  直到 8 年前
        1
  •  1
  •   KenS    8 年前

    那是因为PCL 非常 就另一种编码而言,关于给定字符代码是什么的有限信息。比如说Unicode。

    PCL页面完全有可能下载自定义的子集字体,然后使用只能“正确”使用该字体的字符代码。

    例如,假设我们以这样的方式嵌入字体:我们为第一个字符设置字符代码1,为第二个字符设置字符代码2,依此类推。然后我们发短信“你好世界”

    然后在PCL中表示为

    0x01 0x02 0x03 0x03 0x04 0x05 0x06 0x04 0x07 0x03 0x08

    显然,这不是任何有意义的编码,而且pcl没有任何方法携带unicode映射。

    现在,你的PCL文件包含了几个TrueType字体,它的“可能”是在字体的CMAP子表中有足够的信息来从“文本”中恢复某种意义,但是GhostPCL没有那种复杂度。

    所以不,你没有遗漏任何东西,也没有虫子。请注意,pdfwrite的目标是,生成的pdf文件应该与打印的输出明显相同,仅此而已。尽管人们抱有一厢情愿的想法,但pdf从来没有被设计成可编辑的格式,绝大多数pdf文件都无法编辑,也无法可靠地从中提取“文本”。有些人会成功,但很多人不会。

    推荐文章