2016-07-09 5 views
3

Я хочу повернуть 351K PDF с именем 08-file.pdf с помощью инструментов CLI. Я попытался imagemagick:Бесполезное вращение PDF-файлов с помощью imagemagick

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

Но оригинальное качество:

enter image description here

Пострадавшая серьезная деградация:

enter image description here

I've tried adding the -density 300x300 argument, но результат был 2,5М файл , почти на порядок больше оригинала, что огромные отходы.

Любая идея, как без потерь повернуть файл PDF с помощью imagemagick?

+0

ImageMagick не работает непосредственно на PDF-файлов. В заметке на странице «Поддерживаемые форматы» говорится, что «использует ghostScript для преобразования файла»; предположительно, к простому растровому изображению, поэтому он может работать с магией. Затем результат может быть записан в различные форматы растровых изображений, из которых PDF является лишь одним из них. Используйте инструмент, специально предназначенный для работы с PDF-файлами. – usr2564301

+0

Я бы попробовал Ghostscript напрямую. – Bonzo

ответ

0

Пожалуйста, используйте -compression 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 прогрессирующая Совершенный -rotate 270 & я> & о" Image-0001.jpeg

Он будет записывать выходные данные во временный файл, и когда он преуспеет, он перезапишет исходный файл:

Cmd: jpegtran прогрессирующая Совершенный -rotate 270 "Image-0001.jpeg"> "h1xQ6q"

Modified: Image-0001.jpeg

+2

конвертер с -compress lossless ухудшает качество. Я предпочту открыть файл в GIMP, повернуть его, а затем распечатать с опцией «Печать как файл». Это лучшая работа, которую я нашел. –