Existem muitas perguntas sobre como converter um arquivo PDF em uma imagem PNG, mas estou procurando um bom arquivo PNG nítido e basicamente envolvê-lo ou incorporá-lo a um arquivo PDF sem parecer embaçado ou difusa.
Sei que, com o imagemagic instalado, posso fazer uma conversão simples como:
convert sample.png sample.pdf
Eu também tentei várias opções para definir a profundidade e também a qualidade:
convert -quality 100 sample.png sample.pdf
No entanto, o PDF ainda sai embaçado / confuso.
Aqui está uma imagem de exemplo:
http://img406.imageshack.us/img406/6461/picture3mu.png
Como png, é nítido e limpo. Quando o converto em PDF, mesmo no mesmo tamanho, fica embaçado:
Figura 4.png http://img803.imageshack.us/img803/9969/picture4at.png
Como posso converter PNG para PDF em alta qualidade?
\usepackage[pdftex, final]{graphicx}
e\includegraphics[width=516px]{calendar.png}
, por exemplo.Respostas:
Tente usar a
-density
opção A resolução padrão é 72 pontos por polegada. Então tente algo como-density 300
.Para referência, consulte
-density
a documentação das opções de linha de comando do ImageMagick.fonte
with density 300
em qualquer imagem de exemplo? Eu acho que o resultado depende da entrada. Um novo segmento sobre isso aqui unix.stackexchange.com/q/292025/16920Pode ser muito complicado obter uma boa saída em PDF
convert
. Tente emimg2pdf
vez disso. No leia-me:Para esclarecer: O PDF pode incorporar imagens JPEG 2000 sem perdas (e a maioria dos leitores parece suportá-las ). Portanto, essa conversão é completamente sem perdas:
(Supondo que o delegado JP2 esteja disponível, é claro: verifique
identify -list format | grep JP2
.)fonte
convert sample.png -quality 0 sample.jp2; img2pdf -o sample.pdf sample.jp2
. (Supondo que o delegado JP2 esteja disponível, é claro: verifiqueidentify -list format | grep JP2
.)convert
altere-os e depoistiff2pdf
.-quality 0
?-quality 100
?Estou quase certo de que o que você percebe como uma perda de qualidade no PDF, é apenas um efeito do seu visualizador de PDF 's anti- aliasing recurso.
Se você
evince
visualizar o PDF, poderá ver o recurso de suavização de serrilhado desativado automaticamente em um determinado zoom (300% no meu teste rápido). Você pode ver isso nitidamente ao aumentar o zoom - perceberá que, em algum momento, os pixels se tornam repentinamente visíveis. Esse é o ponto em que o anti-aliasing deve ter sido desativado para permitir uma inspeção precisa da imagem.fonte
Brian Z acima forneceu o abaixo, que é a maneira correta, totalmente reversível e sem perdas (supondo que a etapa de conversão seja de fato sem perdas, o que eu acho que é ou pelo menos deveria ser) maneira de colocar pngs em um pdf. Você precisa converter de png para jp2 sem perdas para estar em conformidade com a estrutura / leitores de PDF (eu acho).
No entanto, é importante notar que você pode fornecer os arquivos .png diretamente para o img2pdf, como:
Isso produzirá o menor arquivo pdf e inserirá o hexadecimal bruto do png nos objetos do pdf sem perdas *.
* A desvantagem é que esse processo não é reversível ao contrário do jp2. Os dados do cabeçalho / rodapé e do cabeçalho / rodapé do bloco foram removidos (o que na verdade torna os arquivos ainda menores!) Do png inserido, deixando apenas os dados brutos da imagem (os metadados excluídos são integrados à estrutura do pdf), presumivelmente para "hackear" o pdf para exibir png bruto, que é tecnicamente não compatível com o contêiner. Ele é exibido corretamente no firefox e pode ser exibido em todos os leitores modernos, mas se png não for compatível com o contêiner, leitores rígidos poderão não renderizar os dados png brutos (pois eles não devem esperar / processá-los corretamente).
Aqui você pode encontrar um script bash extremamente bruto que funcionou para extrair e reconstruir os arquivos png com hashes correspondentes aos usados para entrada no pdf. https://github.com/jack4455667788/RebuildRawPNGExtractedFromPDF
fonte
PDF é um formato vetorial (ou seja, o arquivo contém uma descrição das linhas a serem desenhadas), enquanto outros formatos (JPG, PNG) são formatos de varredura (o arquivo descreve qual cor pintar cada pixel). Se você explodir um PDF, ainda são apenas linhas nítidas; JPG e PNG mostram a pixelização.
(OK, OK, eu menti. Um PDF também pode ser uma varredura).
fonte
Eu acho que para o
-density
parâmetro png-to-pdf deve ser pequeno e não grande. Você poderia tentar algo comoconvert -quality 100 -density 50
fonte