使用 GhostScript 将图像转换为 PDF

Posted

技术标签:

【中文标题】使用 GhostScript 将图像转换为 PDF【英文标题】:Convert Images to PDF using GhostScript 【发布时间】:2013-09-19 06:52:53 【问题描述】:

我正在尝试使用 GhostScript 将 jpg 图像转换为 PDF。我已经在我的 Win7 32 位机器上安装了最新版本的 ghostscript。

gswin32c -sDEVICE=pdfwrite -h -r300  -o C:\Docs\MyFile.pdf  
C:\gs\gs9.10\lib\viewjpeg.ps -c C:\Docs\123.jpg viewJPEG

它读取并创建了 pdf,但它的大小为 3KB,其中没有显示任何内容。

上面的命令有问题吗?

已解决:

我使用了以下命令并将我的 jpeg 转换为 PDF

gswin32c -sDEVICE=pdfwrite -o stuff%03d.pdf viewjpeg.ps -c "(C:/Docs/grid.jpg) << /PageSize 2 index viewJPEGgetsize 2 array astore  >> setpagedevice viewJPEG"

【问题讨论】:

【参考方案1】:

是的,该命令无效。 -h 在命令行为您提供帮助,在实际命令中使用它是不明智的。您已经指定了 -c ,这意味着“将下一个内容作为直接 PostScript 处理”,然后直接输入文件名。 '\' 是 PostScript 中的转义字符,所以你最终会尝试执行 PostScript 命令 'CDocs123.jpg' 不会有任何这样的命令,所以你会得到一个错误。 pdfwrite 设备已经打开了 PDF 文件,但是这个错误意味着页面上没有绘制任何标记,所以你得到一个空的 PDF 文件。

您需要将文件名括在括号中,以便将其作为 PostScript 字符串加载,我还建议使用正斜杠:

(c:/Docs/123.jpg)

【讨论】:

感谢您的意见。我尝试使用以下命令 gswin32c -sDEVICE=pdfwrite -r300 -o (C:/Docs/MyFile.pdf) C:/gs/gs9.10/lib/viewjpeg.ps -c (C:/Docs/123.jpg) viewJPEG 但它给出了错误“无法打开初始设备,正在退出” 对不起我的错误。我选择了错误的文件,即。 123.jpg 不存在。现在它在我发出以下命令 `gswin32c -sDEVICE=pdfwrite -r300 -sOutputFile=MyFile-%d.pdf C:/gs/gs9.10/lib/viewjpeg.ps -c (C:/Docs/grid. jpg) viewJPEG quit' 但图像在 pdf 的页面底部对齐。有没有办法让它与顶部对齐? 我认为这是在 IRC 上回答的。

以上是关于使用 GhostScript 将图像转换为 PDF的主要内容,如果未能解决你的问题,请参考以下文章

将 pdf 转换为图像时出现 Ghostscript 错误

如何使用 ghostscript 将 PDF 转换为 PDF/A 或 PDF/X?

无法使用 ImageMagick 和 GhostScript 将 PDF 转换为 JPG

使用 ghostscript 将 jpg 列表转换为 pdf

打印时出现 GhostScript 图像质量问题

如何使用 GhostScript 设置 PDF 文件的输出图像大小限制