【问题标题】:Alternatives to ImageMagick for PDF downsizing用于缩小 PDF 大小的 ImageMagick 替代品
【发布时间】:2011-03-14 04:15:12
【问题描述】:

遇到一些 PDF 文件无法在我们的 iPad 应用程序中正确显示的问题。我得出的结论是,我们需要通过将 PDF“转换”为 PDF 来进行标准化。我已经使用 ImageMagick 成功处理了这个问题,将 PDF 转换为 PNG(调整大小),然后将 PNG(s)推回 PDF。但是,ImageMagick 中的某些东西会使 PDF 中的照片显示错误。同样的问题只是在 ImageMagick 中将 JPG 或其他图形转换为 PDF。我通过获取转换后的 ImageMagick 文件的输出并使用 GD 再次将其转换为 PNG,然后通过我们的 PDF 转换器将其推送来解决了这个问题。

所以我的问题是:除了使用 ImageMagick 转换回 PDF 之外,还有哪些其他 PHP 工作流程可以使用它?我们不反对付费解决方案,我们只需要一些可行的方法。我们的服务器运行 centOS。

【问题讨论】:

  • 您是如何开始创建 PDF 的?
  • 它们是由我们的客户在各种场景下创建的。我们认为我们不能对他们创建 PDF 文件的方式施加限制,因此我们正在尝试将他们投入系统的任何内容“标准化”为 iPad 可以很好地使用的格式。
  • 天哪。那么,对于文档创建者而言,iPad 的 PDF 例程做什么和不喜欢什么没有模式?哼。好吧,我想它不会改变我在黑暗中的拍摄......

标签: php linux pdf


【解决方案1】:

我的直觉,除了对编写您正在忍受的 PDF 阅读器的人大喊大叫之外,会先是 convert the PDF to PostScript using pdftops,然后是 convert it back into a PDF using Ghostscript。此时您可以启用许多文档兼容性选项,这可能会使其更易于理解。

虽然这可能会产生副作用,但它们应该是最小的。 PDF 基本上是 PostScript 文档的包装,看起来 pdftops 在转换过程中不能做完全愚蠢的事情。

可能会破坏或根本无法使用高级 PDF 功能,例如数字签名或表单。

【讨论】:

  • 我会试一试,谢谢。经过进一步调查,如果我们可以让文档具有适当的页面大小(8.5 x 11 或合法),iPad 似乎可以正确显示。但是,在将 PDF 转换为 PNG 时,PDF 是根据图像的缩小尺寸创建的,而不是符合页面大小。有没有办法让 PDF 符合页面大小而不是图像的物理尺寸?
  • 如果我以编程方式创建它,我会创建一个适当大小的页面,然后将图像直接放在页面上,并进行适当的缩放。但是,我不知道如何实际调整现有文档中的页面大小。可能可以提取图像并手动重新创建页面,但这可能会很麻烦......
猜你喜欢
  • 2012-08-26
  • 2015-08-05
  • 2017-10-14
  • 1970-01-01
  • 2011-03-31
  • 1970-01-01
  • 1970-01-01
  • 2012-11-08
  • 1970-01-01
相关资源
最近更新 更多