.PDF를 사용하여 PDF를 PNG 이미지로 변환하고 싶습니다 convert
. 이미지는 비율이 -x1080이어야 하고, 1920x1080 비율에 맞아야 하며, 품질이 최적이어야 합니다.
Convert에서 사용할 수 있는 다양한 옵션은 다음과 같습니다. https://imagemagick.org/script/command-line-options.php#append
- 먼저 다음 명령줄을 시도했습니다.
convert my.pdf -geometry 1920x1080 -size 1920x1080 -density 1920x1080 my_resized_pdf.png
이 명령의 결과는 좋은 형상(763x1080)의 이미지를 제공하지만 낮은 품질의 이미지를 얻고 싶지는 않습니다.
- 다음과 같이 형상 매개변수 없이 변환 명령줄을 사용합니다.
convert my.pdf -size 1920x1080 -density 1920x1080 my_resized_pdf.png
결과물의 품질은 딱 제가 원하는데 해상도가 1920x1080 비율이 아니고 842x595 입니다. 높이가 1920x1080 비율에 정확히 맞지 않습니다.
x1080 배율과 100% 품질로 PDF에서 PNG 이미지를 얻을 수 있습니까? 아니면 100% 품질의 이미지를 얻기 위한 최대 비율은 842x595입니까? DPI 옵션을 무엇으로 설정해야 합니까 convert
?
답변1
여기에는 시행착오가 수반되며, 결국 어떤 결과가 "최상의 결과"라고 생각할 수 있는지는 논쟁의 여지가 있습니다. 따라서 몇 가지 일반적인 조언을 드리고자 합니다.
-flatten
투명한 배경을 제거하려면 이 옵션을 사용하십시오 . 투명성으로 인해 결과의 실제 품질을 판단하기가 어렵습니다. 최종 이미지에 투명도가 필요한 경우-flatten
품질을 확인한 후 제거할 수 있습니다.-density 300
높은 DPI 결과를 얻으려면 이와 같은 것을 사용하십시오 . 가장 큰 문제convert
는 기본적으로 매우 낮은 밀도(72DPI)를 사용한다는 것입니다. 이 매개변수를 지정해야 합니다.앞으로입력 파일.높은 DPI 이미지를 축소하면 추가적인 흐림이 발생할 수 있으므로 원하는 해상도를 얻기 위해 올바른 DPI 값을 계산하는 것이 좋습니다.
$ convert -density 100 file.pdf -flatten file100.png $ file file100.png file100.png: PNG image data, 827 x 1169, 8-bit colormap, non-interlaced $ echo $((1080*10000/1169)) 9238 $ convert -density 92.38 file.pdf -flatten file9238.png $ file file9238.png file9238.png: PNG image data, 764 x 1080, 8-bit colormap, non-interlaced
convert
"이상적인" DPI 값을 직접 결정할 수 있는 방법이 있는지 잘 모르겠습니다 .
ImageMagick IRC 채널이나 포럼에 이 질문을 가져오면 더 많은 제안을 받게 될 것이라고 확신합니다. 사용 중인 PDF 파일에 대한 링크를 제공하면 도움이 될 것입니다. ;)
빈 테두리를 다듬는 등 다른 방법으로 품질을 향상시킬 수도 있습니다. 페이지의 절반이 흰색이면 해상도가 많이 떨어집니다. 사용 가능한 화면 공간을 최대한 활용하기 위해 PDF 텍스트를 다시 압축하는 솔루션도 있습니다(예: k2pdfopt
).
마지막으로 시도해 볼 수 있는 다른 프로그램이 있습니다. 이것은 의견의 문제이지만 저는 Inkscape나 GhostScript를 직접 사용하는 것을 선호합니다. ImageMagick에는 "함께 붙은" 문자가 있고 Inkscape에는 더 균형 잡힌 결과가 있으며 GhostScript를 사용하면 흐림 없이 순수한 픽셀 이미지를 렌더링할 수 있습니다(원하는 경우 와 pngalpha
사실상 동일한 흐린 버전을 사용하세요 convert
).
이미지 마술사:
잉크 풍경:
고스트 스크립트:
gs -r92.38 -sDEVICE=png48 -sOutputFile=ghostscript.png file.pdf
답변2
노력하다:
convert -resize 1920x1080 in.pdf out.png
PDF가 10페이지인 경우 out-1.png ... out-10.png 10개의 파일을 얻게 됩니다.
이 답변을 무시하십시오: 래스터 파일의 크기를 조정하는 데 유용하지만 PDF 파일의 경우 결과가 매우 흐릿합니다(낮은 DPI 업스케일링).