0

我们的系统工作方式如下:

  1. PDF 文件是使用mPDF 库在服务器上生成的。
  2. 用户在浏览器中查看生成的 PDF 文件,有时将其打印到创建 EMF 文件的虚拟打印机。
  3. 分析 EMF 文件以提取文本信息。
  4. 提取的文本信息被进一步处理。

我在这个过程中的一部分是从 EMF 文件中提取文本信息。当 EMF 文件确实包含文本信息时,我的算法工作正常。但是当 PDF 文件打印到虚拟打印机时,打印软件会将部分文本信息替换为线条和曲线,从而无法从 EMF 中提取文本信息。

我研究了这个问题很多时间,并得出结论对于每个打印的 PDF 都没有共同的解决方案。但同时我发现打印软件只替换那些使用嵌入式 OpenType 字体的文本部分。

因此,在这种特殊情况下,如果我可以将 mPDF 配置为不使用嵌入式 OpenType 字体,那么问题将得到解决。

我的问题是是否可以以不使用嵌入式 OpenType 字体的方式配置 mPDF?

4

2 回答 2

1

我收到了 mPDF 的作者 Ian Back 的答复,指出当前版本 (5.3) 无法在没有嵌入字体的情况下创建文档:

mPDF 没有执行此操作的选项。我确实在某个阶段尝试过,但在让它工作时发现了很大的问题,然后认为它不值得,因为它依赖于用户在他们的计算机上安装了正确的文件(和文件版本)。

于 2012-02-01T09:40:25.503 回答
0

由于 mPDF 是建立在 FPDF 之上的,我想这样做是可能的。FPDF 的字体必须准备为 .php 文件,因此删除这些应该会使 mPDF 呈现没有它们的文档。

尝试重命名 TTF 文件夹:/ttfontdata/.

这是一个黑客,但它应该工作。(注:我没试过)

于 2012-01-30T13:51:08.033 回答