Существует много вопросов о том, как преобразовать PDF-файл в изображение PNG, но я хочу взять хороший резкий PNG-файл и просто обернуть его или встроить в PDF-файл, не делая его размытым или нечеткая.
Я понимаю, с установленным imagemagic я могу сделать простое преобразование, как:
convert sample.png sample.pdf
Я также попробовал много переключателей, чтобы установить глубину, а также настройку качества:
convert -quality 100 sample.png sample.pdf
Однако PDF все еще выглядит размытым / нечетким.
Вот пример изображения:
http://img406.imageshack.us/img406/6461/picture3mu.png
Как png, он свежий и чистый. Когда я конвертирую его в PDF, даже при том же размере он выглядит размытым:
Picture 4.png http://img803.imageshack.us/img803/9969/picture4at.png
Как я могу конвертировать PNG в PDF в высоком качестве?
\usepackage[pdftex, final]{graphicx}
и\includegraphics[width=516px]{calendar.png}
, например.Ответы:
Попробуйте использовать
-density
опцию. Разрешение по умолчанию составляет 72 точки на дюйм. Так что попробуйте что-то вроде-density 300
.Для справки см.
-density
Документацию по параметрам командной строки ImageMagick.источник
with density 300
с любым примером изображения? Я думаю, что результат зависит от ввода. Новая ветка об этом здесь unix.stackexchange.com/q/292025/16920Получить хороший вывод в формате PDF может быть очень сложно
convert
. Попробуйimg2pdf
вместо этого. Из readme:Для пояснения: PDF может встраивать изображения JPEG 2000 без потерь (и большинство читателей, кажется, поддерживают их ). Так что это преобразование полностью без потерь:
(Если, конечно, доступен делегат JP2: проверьте
identify -list format | grep JP2
.)источник
convert sample.png -quality 0 sample.jp2; img2pdf -o sample.pdf sample.jp2
. (Предполагается, что делегат JP2 доступен, конечно: проверьтеidentify -list format | grep JP2
.)convert
нажмите и затемtiff2pdf
.-quality 0
?-quality 100
вместо этого?Я почти уверен, что вы воспринимаете как потери качества в формате PDF, это просто эффект вашего PDF просмотрщик «s анти - сглаживание функций.
Если вы используете
evince
для просмотра PDF, вы можете увидеть, что функция сглаживания автоматически отключается при определенном увеличении (300% в моем быстром тесте). Вы можете ясно видеть это, когда продолжаете увеличивать изображение - вы заметите, что в какой-то момент пиксели внезапно становятся четко видимыми. Это тот момент, когда сглаживание должно быть отключено, чтобы обеспечить точную проверку изображения.источник
Brian Z выше предоставил следующий, который является правильным, полностью обратимым и без потерь (при условии, что шаг конвертации фактически без потерь, что, я думаю, является или, по крайней мере, должно быть) способ поместить png в pdf. Вы должны конвертировать из png в jp2 без потерь, чтобы соответствовать структуре PDF / ридерам (я думаю).
Однако стоит отметить, что сами файлы .png можно предоставить непосредственно в img2pdf, например:
Это создаст наименьший pdf-файл и вставит необработанный гекс png в объекты в pdf без потерь *.
* Недостаток в том, что этот процесс необратим в отличие от использования jp2. Данные заголовка / нижнего колонтитула и и заголовка / нижнего колонтитула фрагмента были удалены (что фактически делает файлы еще меньше!) Из вставляемого png, оставляя только необработанные данные изображения (удаленные метаданные интегрированы в структуру pdf), предположительно для "взлома" PDF-файла для отображения необработанного png, который технически не соответствует контейнеру. Он хорошо отображает в Firefox и может отображать хорошо во всех современных читателях, но если png не соответствует контейнеру, то строгие читатели могут не отображать необработанные данные png (так как они не должны ожидать, что они обрабатывают / обрабатывают правильно).
Здесь вы можете найти чрезвычайно сырой bash-скрипт, который работал для меня, чтобы извлечь и восстановить файлы png с соответствующими хэшами, используемыми для ввода в pdf. https://github.com/jack4455667788/RebuildRawPNGExtractedFromPDF
источник
PDF - векторный формат (т. Е. Файл содержит описание линий для рисования), в то время как другие форматы (JPG, PNG) - это растровые форматы (файл описывает, какой цвет рисовать для каждого пикселя). Если вы взорвете PDF, это все еще только резкие линии; JPG и PNG показывают пикселизацию.
(Хорошо, хорошо, я соврал. PDF также может быть растром).
источник
Я думаю, что для параметра png-to-pdf
-density
должен быть маленький, а не большой. Вы можете попробовать что-то вродеconvert -quality 100 -density 50
источник