【问题标题】:Using ImageMagick or Ghostscript (or something) to scale PDF to fit page?使用 ImageMagick 或 Ghostscript(或其他东西)缩放 PDF 以适应页面?
【发布时间】:2010-10-07 12:49:30
【问题描述】:

我一直在努力反对这一点,但无济于事。

我需要缩小一些大型 PDF 以在 8.5x11 英寸(标准字母)页面上打印。 ImageMagick/Ghostscript 可以处理这种事情,还是因为我使用了错误的工具来完成这项工作而遇到了很多麻烦?

仅依靠客户端打印对话框中的“缩小到页面”选项不是一种选择,因为我们希望最终用户易于使用。

【问题讨论】:

    标签: pdf resize imagemagick ghostscript


    【解决方案1】:

    使用 ImageMagick 的问题在于您将转换为光栅图像格式,这会增加文件大小并降低页面上任何矢量元素的质量。

    Multivalent 将保留 PDF 的矢量信息。 试试:

    java -cp Multivalent.jar tool.pdf.Impose -dim 1x1 -paper "8.5x11in" myFile.pdf
    

    创建输出文件 myFile-up.pdf

    【讨论】:

    【解决方案2】:

    我不会使用convert。它在后台使用 Ghostscript,但速度要慢得多。我会直接使用 Ghostscript,因为它给了我更直接的控制(以及对使用 convert 更难实现的设置的一些控制)。并且为了转换为 PDF 到 PDF 的转换工作,您无论如何都需要安装 Ghostscript:

      gs \
        -o /path/to/resized.pdf \
        -sDEVICE=pdfwrite \
        -dPDFFitPage \
        -r300x300 \
        -g2550x3300 \
        /path/to/original.pdf
    

    【讨论】:

    • 什么是-r300x300-g2550x3300
    • @theonlygusti: r 用于以每英寸点数为单位的分辨率(水平和垂直方向)。 g 用于以像素为单位的页面尺寸(水平和垂直方向)。您需要阅读some of the Ghostscript documentation 以避免提出此类基本问题...
    【解决方案3】:

    Ghostscript 方法对我来说效果很好。 (我将文件从 Windows PC 移动到 Linux 计算机并在那里运行。)我对 Ghostscript 命令做了一个小改动,因为上面的 Ghostscript resize 命令完全填满了 8.5 x 11 英寸的页面。但是,我的打印机无法打印到边缘,因此沿每个页面边缘丢失了几毫米。为了克服这个问题,我将我的 PDF 文档缩放为 8.5 x 11 英寸的 0.92。这样,我看到所有内容都以页面为中心并且有一点边距。因为 0.92 * (2550x3300) = (2346x3036),所以我运行了以下 Ghostscript 命令:

      gs -sDEVICE=pdfwrite \
         -dPDFFitPage \
         -r300x300 \
         -g2346x3036 \
         /home/user/path/original.pdf \
         -o /home/user/path/resized.pdf
    

    【讨论】:

    • 什么是-r300x300-g2346x3036
    【解决方案4】:

    ImageMagick 的 mogrify/convert 命令确实可以完成这项工作。 Stephen Page 的想法几乎是正确的,但您还需要设置文件的 dpi,否则您将无法完成工作。

    假设您有一个 300 dpi 且纵横比已与 8.5 x 11 相同的文件,则命令为:

    // 300dpi x 8.5 -2550, 300dpi x 11 -3300
    convert original.pdf -density "300" -resize "2550x3300" resized.pdf
    

    如果纵横比不同,则需要进行一些稍微复杂的裁剪。

    【讨论】:

    • 对我不起作用。转换后 PDF 已损坏 (v. 7.0.7-Q16)
    猜你喜欢
    • 1970-01-01
    • 2016-09-12
    • 1970-01-01
    • 1970-01-01
    • 2014-04-04
    • 2011-11-17
    • 2012-05-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多