Como Converter uma Imagem para PDF (Grátis)
Converter uma imagem para PDF resolve o layout para impressão, atende requisitos de formato de arquivo e agrupa várias páginas em um único arquivo. Nada disso exige software pago.
No navegador
Arraste as imagens para a ferramenta de conversão de imagem para PDF. Reordene as páginas se precisar, depois baixe o PDF. A ferramenta roda no lado do cliente — os arquivos nunca saem do seu dispositivo. Formatos suportados: JPEG, PNG, WebP, GIF.
img2pdf (linha de comando, sem perdas)
img2pdf coloca as imagens em um container PDF sem recodificá-las. Uma entrada JPEG permanece como JPEG dentro do PDF — sem perda de qualidade por compressão.
pip install img2pdf
# Imagem única
img2pdf image.jpg -o output.pdf
# Várias imagens (cada uma vira uma página)
img2pdf page1.jpg page2.jpg page3.jpg -o output.pdf
# Todos os JPEGs de uma pasta, ordenados por nome
img2pdf $(ls *.jpg | sort) -o combined.pdf
# Definir tamanho de página como A4
img2pdf image.jpg --pagesize A4 -o output.pdf
Diferente do ImageMagick ou Ghostscript, img2pdf não descomprime e recomprime os dados da imagem. O PDF de saída tem qualidade idêntica à entrada.
ImageMagick (linha de comando)
# Imagem única
convert image.jpg output.pdf
# Várias imagens em um PDF
convert page1.jpg page2.jpg page3.jpg output.pdf
# Definir DPI para dimensionamento físico correto
convert -density 150 image.jpg output.pdf
# PNG com transparência — achatar para branco antes de converter
convert image.png -background white -flatten output.pdf
No Ubuntu, o ImageMagick costuma bloquear a saída de PDF por padrão. Se aparecer "not authorized":
sudo nano /etc/ImageMagick-6/policy.xml
# Encontre: <policy domain="coder" rights="none" pattern="PDF" />
# Mude para: <policy domain="coder" rights="read|write" pattern="PDF" />
Python: Pillow
from PIL import Image
# Imagem única para PDF
with Image.open('image.jpg') as img:
img.convert('RGB').save('output.pdf')
# Várias imagens em um PDF
images = [Image.open(f).convert('RGB') for f in ['page1.jpg', 'page2.jpg', 'page3.jpg']]
images[0].save('output.pdf', save_all=True, append_images=images[1:])
Python: img2pdf (sem perdas)
import img2pdf
# Imagem única
with open('output.pdf', 'wb') as f:
f.write(img2pdf.convert('image.jpg'))
# Várias imagens
with open('output.pdf', 'wb') as f:
f.write(img2pdf.convert(['page1.jpg', 'page2.jpg', 'page3.jpg']))
Combinar uma pasta de páginas digitalizadas
import img2pdf
from pathlib import Path
pages = sorted(Path('scans/').glob('*.jpg'))
with open('document.pdf', 'wb') as f:
f.write(img2pdf.convert([str(p) for p in pages]))
print(f'{len(pages)} páginas combinadas em document.pdf')
Ordenar por nome de arquivo mantém as páginas na ordem certa. Se o scanner nomeia arquivos por data ou número de sequência, sorted() cuida disso automaticamente.
Tamanho de página e DPI
A maioria dos conversores define o tamanho da página exatamente de acordo com as dimensões da imagem. Para tamanhos de papel padrão:
# img2pdf: encaixar imagem na página A4
img2pdf image.jpg --pagesize A4 -o output.pdf
# ImageMagick: A4 a 150 DPI
convert -density 150 -page A4 image.jpg output.pdf
Guia de DPI para documentos digitalizados:
| Uso | DPI | Observações |
|---|---|---|
| Leitura na tela | 96–150 | Arquivo pequeno, legível |
| Impressão padrão | 150–200 | Boa qualidade, tamanho razoável |
| Arquivo / jurídico | 300 | Arquivos grandes; preserva detalhes finos |
Pontos principais
img2pdfé a melhor opção de linha de comando para conversão sem perdas — não recodifica dados JPEG.save('output.pdf', save_all=True, append_images=...)do Pillow combina várias imagens em um PDF.- PNG com transparência precisa ser achatado para fundo branco antes da conversão.
- Ordene os nomes de arquivo antes de combinar páginas digitalizadas ou a ordem das páginas ficará errada.
- Use 150 DPI para documentos só de tela; 300 DPI para impressão ou arquivo.