繁体   English   中英

使用 imagemagick 无损旋转 PDF 文件

[英]Lossless rotation of PDF files with imagemagick

我想使用 CLI 工具旋转名为08-file.pdf的 351K PDF。 我试过imagemagick

convert 08-file.pdf -rotate 90 08-file-rotated.pdf

但原始质量:

在此处输入图片说明

遭受严重退化:

在此处输入图片说明

我已经尝试添加-density 300x300参数,但结果是一个 2.5M 的文件,比原始文件大近一个数量级,这是一种巨大的浪费。

知道如何使用 imagemagick 无损旋转 PDF 文件吗?

11/我在使用 imagemagik/convert 转换/更改 pdf 文件时总是有不好的结果(分辨率差或文件大)。 使用选项-compress -density -quality总是令人沮丧和浪费时间(但我不是专家)。

建议1:pdftk

所以我会推荐pdftk (你可能需要通过 apt-get install 安装它)

尝试:

pdftk  08-file.pdf cat 1-endright output 08-file-rotated.pdf

对于旧版本的 pdftk (v<3) 旋转仅由一个字母表示:N:0,E:90,S:180,W:270,L:-90,R:+90,D:+180。 相同的命令是:

pdftk  08-file.pdf cat 1-endR output 08-file-rotated.pdf

从本网站的另一篇文章中,我对语法进行了简要说明

pdftk input.pdf cat 1-endsouth output output.pdf
#     \_______/     \___/\___/        \________/
#     input file    range  |          output file
#                         direction

你也可以看到https://linux.die.net/man/1/pdftk

2020年编辑

建议2:qpdf

我找到了另一种等效的替代方法: qpdf ,更容易记住且功能更强大

参见QPDF 手册

#Syntax (you can rotate only some pages of the document -- see the manual --
qpdf --rotate=[+|-]angle[:page-range]

# Example
qpdf in.pdf out.pdf --rotate=+180

请使用-compress lossless选项:

convert -rotate 90 -compress lossless 08-file.pdf 08-file-rotated.pdf

从文档: https : //www.imagemagick.org/script/command-line-options.php#compress

Lossless 是指无损 JPEG,只有在 JPEG 库已被修补以支持它时才可用。

另一种选择是使用以下命令:

jhead -cmd "jpegtran -progressive -perfect -rotate 270 &i > &o" Image-0001.jpeg

它将输出写入临时文件,成功后将覆盖原始文件:

Cmd:jpegtran -progressive -perfect -rotate 270 "Image-0001.jpeg" > "h1xQ6q"

修改:Image-0001.jpeg

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM