Eu quero converter um PDF para imagens PNG usando convert
. As imagens devem caber na proporção 1920x1080 por ter uma proporção ?x1080 e ter a melhor qualidade.
Aqui estão muitas opções que posso usar com convert: https://imagemagick.org/script/command-line-options.php#append
- Primeiro eu tentei a seguinte linha de comando:
convert my.pdf -geometry 1920x1080 -size 1920x1080 -density 1920x1080 my_resized_pdf.png
O resultado do comando me dá uma imagem com boa geometria (763x1080), mas com baixa qualidade que não quero obter.
- Eu uso a linha de comando convert sem o parâmetro geometry da seguinte forma:
convert my.pdf -size 1920x1080 -density 1920x1080 my_resized_pdf.png
A qualidade do resultado é exatamente o que eu quero, mas a resolução não é 1920x1080, mas sim 842x595. Não cabe exatamente na altura a proporção 1920x1080.
É possível obter imagens PNG com proporção ?x1080 e com 100% de qualidade de um PDF? Ou é 842x595 a maior proporção para obter uma imagem de 100% de qualidade? Devo definir uma opção DPI para convert
?
Isso envolve algumas tentativas e erros e, no final, é discutível qual resultado você pode considerar o "melhor resultado". Então, permita-me apenas dar alguns conselhos genéricos:
use a
-flatten
opção para se livrar do fundo transparente. A transparência torna difícil julgar a qualidade real do resultado. Se você precisar da transparência na imagem final, poderá remover-flatten
assim que tiver certeza da qualidade.use algo como
-density 300
para obter um resultado de DPI alto. O principal problemaconvert
é que ele usa uma densidade muito baixa por padrão (72 DPI). Este parâmetro deve ser especificado antes do arquivo de entrada.o downscaling de uma imagem de alto DPI pode causar desfoque adicional, então talvez calcular o valor correto de DPI para alcançar a resolução desejada seja o caminho a seguir:
Não tenho certeza se existe uma maneira de
convert
determinar o valor DPI "ideal" por si só.Se você levar essa pergunta para o canal ou fórum do ImageMagick IRC, tenho certeza de que obterá mais alguns conselhos. Ajuda se você fornecer o link para o arquivo PDF com o qual está trabalhando. ;)
Você também pode melhorar a qualidade de outras maneiras, por exemplo, aparando bordas vazias. Você está perdendo muita resolução se metade da página for branca. Existem até soluções que reorganizam o texto PDF para tirar o máximo proveito do espaço de tela disponível (por exemplo
k2pdfopt
, ).Finalmente, experimente também outros programas. Isso é uma questão de opinião, mas prefiro usar o Inkscape ou o GhostScript diretamente. O ImageMagick tem caracteres "colados juntos", o Inkscape tem um resultado mais equilibrado e o GhostScript permite renderizar uma imagem de pixel puro sem desfoque (se isso for algo que você gosta - use
pngalpha
para a versão borrada, que é praticamente idêntica aconvert
).ImageMagic:
Inkscape:
GhostScript:
Tentar:
Se o seu pdf tiver 10 páginas, você receberá 10 arquivos out-1.png ... out-10.png
Por favor, ignore esta resposta : embora útil para o redimensionamento de arquivos raster, está produzindo resultados muito embaçados para arquivos PDF (baixo DPI upscaled).