在 ghostscript 中旋转 jpeg 图像
Rotate jpeg images in ghostscript
我正在使用 ghostscript 将 .ps 文件转换为 .jpeg 文件。但是输出文件应该旋转180度。
我正在使用以下命令进行旋转。
gswin64c.exe -sDEVICE=jpeg -dBATCH -dNOPAUSE -dSAFER -r300x300 -sOutputFile=E:\temp\test.jpg -dEPSCrop -c "<> setpagedevice" "E:\temp\myFile.ps.
它给出以下错误:
GPL Ghostscript 9.10 (2013-08-30)
版权所有 (C) 2013 Artifex Software, Inc。保留所有权利。
此软件不附带任何保证:有关详细信息,请参阅文件 PUBLIC。
错误:/undefined in E:\temp\myFile.ps
操作数栈:
执行堆栈:
%interp_exit .runexec2 --nostringval-- --nostringval-- --nostringval-
- 2 %stopped_push --nostringval-- --nostringval-- --nostringval-- fa
lse 1 %stopped_push .runexec2 --nostringval-- --nostringval-- --nost
ringval-- 2 %stopped_push --nostringval--
字典堆栈:
--dict:1182/1684(ro)(G)-- --dict:0/20(G)-- --dict:77/200(L)--
当前分配模式是本地的
最后 OS 错误:没有那个文件或目录
GPL Ghostscript 9.10:不可恢复的错误,退出代码 1
PS:- E:\temp\myFile.ps 位置和文件存在于我的系统中。
您已经使用 -c 开关启动了任意 PostScript。从那时起,直到下一个开关的所有内容都被视为 PostScript。
您的命令行在结束 " 和输入文件名之间不包含任何 '-',因此输入文件名被视为 PostScript 程序的一部分。由于没有 PostScript 标记 'E;\temp\myFile.ps' 解释器给你一个未定义的错误。
尝试在“...setpagedevice”之后放置一个 -f
(-f 表示将下一个内容视为文件名)。
也就是说,我怀疑这是否会实现您想要的,这取决于输入文件中的内容。您已使用 -dEPSCrop
,但文件名具有 .ps 扩展名。除非文件真的是 EPS,否则 EPSCrop 不会有任何效果。如果它是 EPS,那么媒体大小将是 EPS BoundingBox 的尺寸,并且(我相信)方向将被忽略。如果输入文件不是 EPS,则 EPSCrop 将被忽略。
您使用的是非常旧的 Ghostscript 版本(7 岁),您真的应该更新。
我正在使用 ghostscript 将 .ps 文件转换为 .jpeg 文件。但是输出文件应该旋转180度。
我正在使用以下命令进行旋转。
gswin64c.exe -sDEVICE=jpeg -dBATCH -dNOPAUSE -dSAFER -r300x300 -sOutputFile=E:\temp\test.jpg -dEPSCrop -c "<> setpagedevice" "E:\temp\myFile.ps.
它给出以下错误:
GPL Ghostscript 9.10 (2013-08-30) 版权所有 (C) 2013 Artifex Software, Inc。保留所有权利。 此软件不附带任何保证:有关详细信息,请参阅文件 PUBLIC。 错误:/undefined in E:\temp\myFile.ps 操作数栈:
执行堆栈: %interp_exit .runexec2 --nostringval-- --nostringval-- --nostringval-
- 2 %stopped_push --nostringval-- --nostringval-- --nostringval-- fa lse 1 %stopped_push .runexec2 --nostringval-- --nostringval-- --nost ringval-- 2 %stopped_push --nostringval-- 字典堆栈: --dict:1182/1684(ro)(G)-- --dict:0/20(G)-- --dict:77/200(L)-- 当前分配模式是本地的 最后 OS 错误:没有那个文件或目录 GPL Ghostscript 9.10:不可恢复的错误,退出代码 1
PS:- E:\temp\myFile.ps 位置和文件存在于我的系统中。
您已经使用 -c 开关启动了任意 PostScript。从那时起,直到下一个开关的所有内容都被视为 PostScript。
您的命令行在结束 " 和输入文件名之间不包含任何 '-',因此输入文件名被视为 PostScript 程序的一部分。由于没有 PostScript 标记 'E;\temp\myFile.ps' 解释器给你一个未定义的错误。
尝试在“...setpagedevice”之后放置一个 -f
(-f 表示将下一个内容视为文件名)。
也就是说,我怀疑这是否会实现您想要的,这取决于输入文件中的内容。您已使用 -dEPSCrop
,但文件名具有 .ps 扩展名。除非文件真的是 EPS,否则 EPSCrop 不会有任何效果。如果它是 EPS,那么媒体大小将是 EPS BoundingBox 的尺寸,并且(我相信)方向将被忽略。如果输入文件不是 EPS,则 EPSCrop 将被忽略。
您使用的是非常旧的 Ghostscript 版本(7 岁),您真的应该更新。