pdf - 为 PDF 添加白色边框(更改纸张格式)

标签 pdf imagemagick ghostscript

我必须将给定的 PDF 从 A4 ( 210mm*297mm ) 更改为 216mm*303mm .

每个尺寸的额外 6 毫米应设置为每边 3 毫米的白色边框。 PDF 页面的原始内容应以输出页面为中心。

我试过 convert :

convert in.pdf -bordercolor "#FFFFFF" -border 9 out.pdf

这给了我完全需要的结果,但我失去了 PDF 中原始图像的清晰度。这一切都是模糊的。

我也检查过
convert in.pdf out.pdf

这根本没有任何变化,但也搞砸了图像。

所以我尝试了 Ghostcript 但没有得到任何结果。到目前为止,我从德国方面发现的最佳方法是:
gs -sOutputFile=out.pdf -sDEVICE=pdfwrite -g6120x8590 \
-c "<</Install{1 1 scale 8.5 8.5}>> setpagedevice" \
-dNOPAUSE -dBATCH in.pdf

但我收到错误:/typecheck in --.postinstall--。

最佳答案

默认情况下,Imagemagick 将输入的 PDF 文件转换为 72dpi 的图像。这是非常低的分辨率,正如你第一次经历的那样。 Imagemagick 的输出总是一个光栅图像,所以如果你输入的 PDF 是文本,它就不再是文本了。

如果您不介意输出 PDF 越来越大,您可以简单地增加 Imagemagick 使用 -density 探测原始 PDF 的比率。选项,像这样:

convert -density 600 in.pdf -bordercolor "#FFFFFF" -border 9 out.pdf

我使用 600 是因为它是适用于 OCR 的最佳位置。我建议尝试 300、450、600、900 和 1200 并选择最好的一个不会变得难以操作的巨大。

关于pdf - 为 PDF 添加白色边框(更改纸张格式),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25369286/

相关文章:

html - 使用 Google Docs API 生成 PDF

java - iTextPDF 到 OpenPDF 集成

php - 在浏览器中从mysql数据库查看pdf文件

image-processing - 如何从文本图像中删除虚线带?

imagemagick - 使用 imagemagick 创建工具栏图像列表

Bash 转换调整大小递归保留文件名

pdf - 如何使用 ImageMagick、Ghostscript、Windows Vista/7 x64 安装、测试、转换、调整 PDF 大小

c# - iTextSharp - 从 PictureBox 控件中获取图像并将其插入到 PDF 文件中

fonts - 使用 GhostScript 对未嵌入字体的 PDF 进行栅格化

c# - 如何在将 XPS 转换为 PDF 时获取 GhostPDL 进度通知?