首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Imagick PDF转JPG未知字体

Imagick PDF转JPG未知字体
EN

Stack Overflow用户
提问于 2013-09-26 03:34:39
回答 2查看 1.7K关注 0票数 0

因此,最近我设法创建了一组PHP脚本,允许哑机用户上传PDF文件并将其作为JPG图像进行查看。它工作得很完美。我测试了它,它似乎在大多数情况下都工作得很好。此外,负载是完全平衡的,所以到目前为止没有问题,我已经准备好迎接严重的流量!

当用户上传的PDF文件没有嵌入字体,并且使用了Ghostscript无法识别的字体时,我的问题就会出现。有没有可能设置一个默认的备用字体来防止Ghostscript出现木马错误?

设置: OS: Debian

它是如何工作的:我使用imagick提供的" convert“命令将pdf格式转换为jpeg格式,不需要设置额外的参数。我不确定我的Ghostscript/Imagick设置如何,但我不认为它有什么特别之处。如果您需要了解有关安装的一些信息,请向我提供特定配置文件的位置和设置:我将尽我所能尽快提供。

如果你还需要什么,请随时提出来!提前感谢!

EN

回答 2

Stack Overflow用户

发布于 2013-09-26 14:00:50

是的,您可以添加此参数,指向windows中的字体文件夹。例如,在ghostscript过程中,它将开始从以下路径获取字体

代码语言:javascript
运行
复制
  -sFONTPATH=c:/windows/fonts 

另请注意,您可以下载并添加windows字体文件夹中没有的其他字体。

至于设置问题,我正在使用ghostscript将PDF转换为图像,您为什么要使用imagemagick?至于这一部分,不需要任何参数,在我的例子中,我使用参数来提高生成图像的质量,作为建议,您可以将此参数添加到ghostscript中,以控制生成图像的质量。

代码语言:javascript
运行
复制
  -r150 

根据ghosscript文档here

您可以为Ghostscript提供命令行选项:-dPDFNOCIDFALLBACK。通过将-dPDFNOCIDFALLBACK与-dPDFSTOPONERROR相结合,生产工作流程可以强制缺少CIDFonts的CIDFont出错,并避免仅在打印后才意识到缺少CIDFont。

票数 0
EN

Stack Overflow用户

发布于 2013-09-26 15:12:04

Ghostscript不会在丢失的字体上抛出错误,它会尝试回退,首先将名称与字体和样式列表进行匹配,最后(通常)替换Helvetica。

在缺少字形的情况下,您没有说明您认为缺少的是哪种类型),它尝试替换,并最终退回到使用DroidSansFallback,它可能没有字形,但仍然不会引发错误。

因此,要么是你使用的Ghostscript版本太旧,无法提供这个功能(而且你没有说你正在使用的GS是什么版本),要么是因为某种原因,这个功能已经被破坏了。当前版本是9.10,我建议您确保使用该版本,理想情况下是您自己构建的,因为Linux维护者习惯于对Ghostscript应用特定于发行版的补丁和不寻常(在我们看来不可取的)构建条件。

虽然您可以使用-sFONTPATH添加额外的字体,但这通常不会对缺少字体的PDF文件有帮助,因为您的系统中通常也不会有缺少的字体。

user1283633是非常正确的,你不需要使用convert,除非你需要额外的处理,否则Ghostscript非常有能力直接产生JPEG输出。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19013674

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档