我使用此Ghostscript命令将PDF转换为图像:
gs \
-q -dQUIET -dPARANOIDSAFER -dBATCH -dNOPAUSE -dNOPROMPT \
-dCOLORSCREEN \
-dDOINTERPOLATE \
-dMaxBitmap=500000000 \
-dNumRenderingThreads=4 \
-dAlignToPixels=0 \
-dGridFitTT=0 \
-dTextAlphaBits=4 \
-dGraphicsAlphaBits=4 \
-sDEVICE=jpeg \
-dFirstPage=1 \
-dDEVICEWIDTHPOINTS=1654 \
-dDEVICEHEIGHTPOINTS=2333 \
-dDEVICEXRESOLUTION=1654 \
-dDEVICEYRESOLUTION=2333 \
-sOutputFile=d:\images\%01d.jpg \
d:\test.pdf
Run Code Online (Sandbox Code Playgroud)
它会转换图像,但图像为13675x27280像素.我想要1654x2333px中的图像.我究竟做错了什么?
根据这个问题:
由于颜色不是RGB,因此某些PDF无法在iOS设备上显示.还提到使用ghostscript将PDF从CMYK转换为RGB可以自动化.任何人都知道实际命令可能是什么样的?
我发现Ghostscript能够将PDF转换为图像格式.
我尝试使用PDF到图像转换器,但无法清楚地理解它.
我已安装gs905w64.exe,但当我尝试访问add reference我的Web应用程序时,我收到此错误.
A reference to gsdll32.dll could not be added. No type libraries were found in the component.
要将外部EPS文件插入PostScript文档,系统会指示使用文本编辑器打开EPS文件,并在PostScript文件中复制/粘贴基于文本的数据.
我想知道是否有一种标准方法将外部EPS文件包含在PostScript文档中?我的意思是链接到EPS文件,因为PS可以在运行PostScript文档时捕获并读取其内容.我已经阅读了有关run命令的内容,但不知道如何使用它在主PostScript文档中包含外部EPS文件.
更新:将EPS图像插入时
%!PS-Adobe-3.0
/Times-Roman findfont
14 scalefont setfont
72 700 moveto
(Thi is a text) show
72 300 translate
(1.eps)run
72 100 moveto
(Another text bellow image) show
showpage
Run Code Online (Sandbox Code Playgroud)
它发送到下一页.在此示例中,第二个文本转到第2页,而不是显示在位置72 100.
在Ubuntu上使用Ghostscript(版本8.71)合并用wkhtmltopdf创建的PDF文件时遇到问题.
我在随机场合遇到的问题是某些字符在合并过程中丢失,并且在合并的PDF中没有任何(或空格)替换.如果我查看原始PDF,它看起来很好,但合并后一些字符丢失.
请注意,一个丢失的字符(例如数字9或字母a)可能会丢失在文档中的一个位置,但在文档中的其他位置显示正常,因此显示它或字体问题不是问题.
我使用的命令是:
gs \
-q \
-dNOPAUSE \
-sDEVICE=pdfwrite \
-sOutputFile=/tmp/outputfilename \
-dBATCH \
/var/www/documents/docs/input1.pdf \
/var/www/documents/docs/input2.pdf \
/var/www/documents/docs/input3.pdf
Run Code Online (Sandbox Code Playgroud)
其他任何经历过这种情况的人,或者甚至更好地了解它的解决方案?
我在带有文本的PDF文档上使用了ghostscript.文本看起来像黑白位图.如何使用可读文本获取图像?
-r96
-dTextAlphaBits=1
-sDEVICE=png16m
Run Code Online (Sandbox Code Playgroud) 当我在终端中运行convert file.pdf或gs命令时,我收到以下错误:
dyld: Library not loaded: /usr/local/lib/libjbig2dec.0.dylib
Referenced from: /usr/local/bin/gs
Reason: image not found
Run Code Online (Sandbox Code Playgroud)
我使用自制软件安装了imagemagick和ghostscript:
brew install imagemagick
brew install gs
Run Code Online (Sandbox Code Playgroud)
我已经尝试过相关问题的解决方案,例如重新安装,重新连接等,但我无法让它工作.
我也尝试过:
brew uninstall libtool
brew install libtool --universal
brew unlink libtool && brew link libtool --force
Run Code Online (Sandbox Code Playgroud)
Homebrew,libtool,imagemagick和ghostscript都是最新的,我正在运行最新版本的Mavericks.
关于如何解决这个问题的任何想法?
我正在尝试使用ghostscript压缩pdf文件,如下所示:
gs -sDEVICE=pdfwrite -dPDFSETTINGS=/ebook -dCompatibilityLevel=1.4 -dNOPAUSE -dBATCH -sOutputfile=output.pdf input.pdf
Run Code Online (Sandbox Code Playgroud)
我过去成功完成了这项工作,但由于某些原因,它现在无法运作.我收到以下错误:
GPL Ghostscript 9.15 (2014-09-22)
Copyright (C) 2014 Artifex Software, Inc. All rights reserved.
This software comes with NO WARRANTY: see the file PUBLIC for details.
**** Unable to open the initial device, quitting.
Unrecoverable error: undefinedfilename in setpagedevice
Operand stack:
true --nostringval-- --nostringval-- --nostringval-- --nostringval-- --nostringval-- --nostringval-- --nostringval-- --nostringval--
Run Code Online (Sandbox Code Playgroud)
[编辑:我将输入错误从-SOutputFile修改为-sOutputFile以避免这个红鲱鱼.(但这就是一些评论/答案所指的.)]
我正在构建一个简单的脚本,它使用Ghostscript将PDF的第一页转换为图像.这是我使用的命令:
gs -q -o output.png -sDEVICE=pngalpha -dLastPage=1 input.pdf
Run Code Online (Sandbox Code Playgroud)
这适用于一些PDF,例如,如果我转换PDF的第一页,如下所示:

我实际上把这个第一页作为图像,并没有任何问题.
但我注意到其他PDF的第一页,如下所示:

使用相同的gs命令,转换后,.png图像如下所示:

问题是,当我转换该页面时,我在图像左侧获得了额外的空白区域,为什么GhostsScript会这样做?额外的空白空间来自哪里?
我在Windows上安装了Ghostscript,因为我要做的是压缩/减少网络共享上12,000多个PDF文件的大小.任何GUI软件都无法做到这一点,因为资源耗尽导致它们在一段时间后就会爆炸,所以我认为命令行是这里的方法.
我已经阅读了Ghostscript文档和压缩PDF文件的不同示例,但我似乎无法找到任何大批量操作.
基本上,我需要定位多个文件夹来递归压缩将在网络共享上的文件.
使用Ghostscript可以这样做吗?如果是这样,请通过一些命令示例来帮助我实现这一点.
谢谢!
ghostscript ×10
pdf ×6
command-line ×2
c# ×1
cmyk ×1
eps ×1
image ×1
imagemagick ×1
ipad ×1
macos ×1
merge ×1
png ×1
postscript ×1
rgb ×1
windows ×1