GhostScript 命令创建 PDF 文件缩略图

4
我正在尝试从PDF文件创建缩略图。我可以通过下面的命令生成JPEG图像,但问题是我无法将输出图像调整为固定大小(250x250)。命令-dPDFFitPage=true使输出图像适应给定的尺寸,并且图像显示为旋转状态。有人能帮助我解决这个问题,以生成250x250大小的PDF文件缩略图吗?
/usr/bin/gs -dNOPAUSE -sDEVICE=jpeg -dFirstPage=1 -dLastPage=1 -sOutputFile=<path to output file>%d.jpeg -dJPEGQ=100 -g250x250 -dUseCropBox=true  -dPDFFitPage=true -q  <path to input file>.pdf -c quit

感谢Sachin

GhostScript 9.15版本出现错误

根据建议,我已经安装了Ghostscript 9.15版本。但是在安装后,无论我传递什么命令都会出现错误。如何纠正或检查GS 9.15是否已经正确安装。

 **** Error reading a content stream. The page may be incomplete.
   **** File did not complete the page properly and may be damaged.
Error: /ioerror in --showpage--
Operand stack:
   1   true
Execution stack:
   %interp_exit   .runexec2   --nostringval--   --nostringval--   --nostringval--   2   %stopped_push   --nostringval--   --nostringval--   --nostringval--   false   1   %stopped_push   1945   1   3   %oparray_pop   1944   1   3   %oparray_pop   1928   1   3   %oparray_pop   --nostringval--   --nostringval--   2   1   1   --nostringval--   %for_pos_int_continue   --nostringval--   --nostringval--   1826   0   11   %oparray_pop   --nostringval--   --nostringval--
Dictionary stack:
   --dict:1187/1684(ro)(G)--   --dict:1/20(G)--   --dict:82/200(L)--   --dict:82/200(L)--   --dict:116/127(ro)(G)--   --dict:280/300(ro)(G)--   --dict:30/32(L)--   --dict:6/8(L)--   --dict:21/40(L)--   --dict:1/1(ro)(G)--   --dict:7/17(L)--
Current allocation mode is local
Last OS error: No such file or directory
GPL Ghostscript 9.15: Unrecoverable error, exit code 1
Unrecoverable error: typecheck in setpagedevice
2个回答

3
下面的代码对我有效:
```html

代码如下:

```
gs -sDEVICE=jpeg -dPDFFitPage=true -dDEVICEWIDTHPOINTS=250 -dDEVICEHEIGHTPOINTS=250 -sOutputFile=outputfile.jpeg inputfile.pdf

-dDEVICEWIDTHPOINTS=pixels
-dDEVICEHEIGHTPOINTS=pixels

1
我怀疑旋转是由于PDF更适合这种方式(涉及较少缩放),但我需要看一下PDF文件的示例才能确定。
我假设旋转是您的问题。 您说您“无法将输出图像调整为固定大小(250x250)”,但您接着说“命令-dPDFFitPage = true使输出图像适合给定的尺寸”,因此显然您能够调整输出大小。
您还应说明使用的Ghostscript版本,如果没有使用最新版本(9.15),则应尝试该版本。

我正在使用GhostScript 9.10版本。我的实际问题是进行所需的缩放。使用-g250x250,我可以获得所需的250x250大小,但图像在垂直方向上更适合。我的要求是创建一个输入PDF文件的JPEG缩略图(250x250)大小。 - Sachidananda Pattnaik
首先建议您使用当前版本9.15。我认为缩放不是您的问题,因为您说您得到了正确的大小,但听起来您的问题是旋转。但是没有看到示例很难确定。建议您将一个(小)示例放在公共场所,并在此处放置URL。 - KenS
我已经尝试过以下命令的不同组合,但迄今为止都没有成功: -dFIXEDMEDIA -dDEVICEWIDTHPOINTS=250 -dDEVICEHEIGHTPOINTS=250 -dDEVICEWIDTH=250 -dDEVICEHEIGHT=250 - Sachidananda Pattnaik
这些都是用于调整媒体大小的方法,如果选择了-dPDFFitPage选项,内容将会按比例缩放到输出中。你可以尝试当前版本,或者在公共场所发布一个示例文件,以便其他人可以查看。如果没有这些信息,就很难进一步评论。不过我知道,通常情况下这是有效的。 - KenS

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接