我们有一个系统按以下方式工作:
使用mPDF library在服务器上生成
-
PDF文件 .
-
用户在浏览器中查看生成的PDF文件,有时将其打印到创建EMF文件的虚拟打印机 .
分析 -
EMF文件以提取文本信息 .
-
进一步处理提取的文本信息 .
我的这个过程的一部分是从EMF文件中提取文本信息 . 当EMF文件包含文本信息时,我的算法工作正常 . 但是当PDF文件被打印到虚拟打印机时,打印软件会用线条和曲线替换文本信息的某些部分,从而无法从EMF中提取文本信息 .
我花了很多时间研究这个问题并得出结论,每个印刷的PDF都没有共同的解决方案 . 但与此同时,我发现打印软件仅替换使用嵌入式OpenType字体的文本部分 .
因此,在这种特殊情况下,如果我可以将mPDF配置为不使用嵌入式OpenType字体,那么问题将得到解决 .
我的问题是,是否可以以不使用嵌入式OpenType字体的方式配置mPDF?
2 回答
我收到了mPDF的作者Ian Back的回答,声称当前版本(5.3)无法在没有嵌入字体的情况下创建文档:
由于mPDF Build 在FPDF之上,我想可以这样做 . FPDF的字体必须准备为.php文件,因此删除它们应该使mPDF渲染文档没有它们 .
尝试重命名TTF文件夹:
/ttfontdata/
.这是一个黑客,但它应该工作 . (注意:我没试过)