【问题标题】:How can I render PDF file pages as images?如何将 PDF 文件页面呈现为图像?
【发布时间】:2010-03-25 15:42:20
【问题描述】:

我需要能够将 PDF 文件转换为图像(每页一张图像),以便像 Google Docs 那样显示在网页上。这适用于内部 Intranet 应用程序,其中要求在 Web 上提供 PDF 文件,但具有跟踪滚动的能力,这是我能想到的唯一方法。

问题是我找不到好的方法来即时转换 PDF 文件。

【问题讨论】:

  • 好 = 一个 .net 组件,它可以做到这一点并允许我 .Save 图像...没有打印驱动程序或类似的东西
  • .NET 的文档模型是围绕微软的狂妄自大建立的,旨在用 XPS 扼杀 PDF。所以你在没有第三方工具的情况下做这件事的机会很小。

标签: pdf c#-2.0


【解决方案1】:

试试GhostScript。它是开源的,可以作为命令行进程或直接通过 DLL 运行。在过去的 2 年里,我在生产应用程序中使用了它,而且问题很少。

要了解如何直接使用 dll 导出图像,请参阅this codeproject article

【讨论】:

  • 我非常希望能够逃脱,而不必在单独的过程中运行某些东西。
  • 其实看起来你可以直接调用dll,但是由于某种原因我无法获得非常高质量的图像:(
  • 它一定是某种 DPI 标志。我实际上并不知道您可以直接调用 dll。感谢您的提示!
  • 只需要提高 ResolutionXY,现在我就有了高质量的图像......效果很好:)
  • 是否可以使用 GhostScript 库获取 PDF 中的页数?
【解决方案2】:

我们在这里使用ABCpdf 将PDF 转换为图像。

注意:它不是免费的

【讨论】:

    【解决方案3】:

    您可以使用 ImageMagik,它是免费的,并且可以进行这种转换。

    http://www.imagemagick.org

    【讨论】:

    • ImageMagick 需要 GhostScript 进行转换。
    【解决方案4】:

    尝试使用Tall Components 中的 PDF 组件转换为图像。

    您需要进一步研究这些内容以跟踪更改等,并且可能需要转换为文本。

    【讨论】:

      【解决方案5】:

      PeaPDF

      我创建了一个用于渲染 PDF 的免费开源项目 - https://github.com/elicym/peapdf/

      鬼脚本

      您也可以使用Ghostscript,但它的许可证是 AGPL,如果您使用它,您可能需要分发您的代码。见https://www.ghostscript.com/license.html,尤其是部分:

      归根结底,如果您分发我们的软件,或向通过计算机网络远程与其交互的用户提供软件的功能,您必须共享您的源代码。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-02-05
        • 1970-01-01
        • 2022-04-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多