[英]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总是令人沮丧和浪费时间(但我不是专家)。
所以我会推荐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年编辑:
我找到了另一种等效的替代方法: 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.