【问题标题】:Changing pdf image dpi using gs使用 gs 更改 pdf 图像 dpi
【发布时间】:2012-03-08 22:20:16
【问题描述】:

我正在尝试在 Linux/Ubuntu 11.10 中使用 gs 更改 .pdf 图像 (myPic.pdf) 的 dpi

这是我的做法,但我得到了错误:

 gs -q -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -dPDFSETTINGS=/printer \
    -sOutputFile=fileout.pdf \
     myPic.pdf`

在这里,我正在尝试根据this将 dpi 更改为 300

我尝试上述命令时收到的错误是:

**** Unable to open the initial device, quitting.

什么给了?

可能的解决方案:

签出this

【问题讨论】:

    标签: unix image-processing ghostscript dpi


    【解决方案1】:

    您的初始 Ghostscript 命令应该可以工作。

    但是,如果您所在的目录对于运行该命令的用户而言是不可写的,您将收到类似的消息!

    mbp:/$密码 / mbp:/$ ls -ld 。 drwxr-xr-x 38 根轮 1360 Mar 10 16:20 . mbp:/$ whoami 皮皮塔 mbp:/$ gs -o a.pdf -sDEVICE=pdfwrite -c 显示页 GPL Ghostscript 9.05 (2012-02-08) 版权所有 (C) 2010 Artifex Software, Inc. 保留所有权利。 此软件不提供任何担保:有关详细信息,请参阅文件 PUBLIC。 GPL Ghostscript 9.05:**** 无法打开文件 a.pdf。 **** 无法打开初始设备,退出。 mbp:/$ cd ~ mbp:/$密码 /用户/pipitas mbp:~$ ls -ld 。 drwxr-xr-x+ 3010 pipitas 员工 102340 Mar 13 22:01 。 mbp:~$ gs -o a.pdf -sDEVICE=pdfwrite -c showpage GPL Ghostscript 9.05 (2012-02-08) 版权所有 (C) 2010 Artifex Software, Inc. 保留所有权利。 此软件不提供任何担保:有关详细信息,请参阅文件 PUBLIC。

    【讨论】:

    • 我在一个读/写目录中。所以它不起作用是相当奇怪的。我会再次检查。谢谢!
    • 这张支票的结果是什么?!
    • 很遗憾我不太记得了。对不起。
    【解决方案2】:

    成功了!

    convert -units PixelsPerInch myPic.pdf -density 300 fileout.pdf

    【讨论】:

    • Ummm...然而,这会给出一个看起来很粗糙的图像文件。
    • convert 来自 ImageMagick。它不会原生处理 PDF,而是保留其可能的矢量图形内容。它仅本地处理像素图像。为了“阅读”PDF,它使用 Ghostscript 作为 delegate,将(矢量)PDF 的页面转换为(像素)图像。一旦它是像素图像,地狱中的 ImageMagick 就无法返回基于矢量的 PDF。 (这就像你不能逆转牛排->肉末的过程。你不能从汉堡回到炸肉排,对吗?)。这就是为什么 ImageMagick 生成的 PDF 只是嵌入到薄 PDF 结构中的全页图像......
    • -- 最后,PDF 本身没有“分辨率”。只有嵌入在 PDF 页面中的像素图像才具有“分辨率”。因此,您的命令convert -units PixelsPerInch myPic.pdf -density 300 fileout.pdf 告诉 ImageMagick:'获取我的 PDF 文件并将其中包含的所有内容(无论是像素图像还是矢量对象)转换为一个 300dpi 图像并将该图像放回 PDF 页面! '
    • 您需要将-density 200放在输入文件名之前。
    猜你喜欢
    • 2017-10-21
    • 1970-01-01
    • 2015-07-09
    • 2011-04-23
    • 1970-01-01
    • 2011-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多