Cara Mengonversi Gambar ke PDF (Gratis)
Mengonversi gambar ke PDF memperbaiki tata letak untuk cetak, memenuhi persyaratan format file, dan menggabungkan beberapa halaman menjadi satu file. Semuanya tidak memerlukan software berbayar.
Di browser
Seret gambar ke tool image-to-pdf. Susun ulang halaman jika perlu, lalu unduh PDF-nya. Tool berjalan di sisi klien — file tidak meninggalkan perangkat kamu. Format yang didukung: JPEG, PNG, WebP, GIF.
img2pdf (command line, tanpa kompresi ulang)
img2pdf memasukkan gambar ke dalam container PDF tanpa mengenkodenya ulang. Input JPEG tetap sebagai JPEG di dalam PDF — tidak ada penurunan kualitas akibat kompresi.
pip install img2pdf
# Satu gambar
img2pdf gambar.jpg -o output.pdf
# Beberapa gambar (setiap gambar jadi satu halaman)
img2pdf hal1.jpg hal2.jpg hal3.jpg -o output.pdf
# Semua JPEG di folder, diurutkan berdasarkan nama
img2pdf $(ls *.jpg | sort) -o gabungan.pdf
# Atur ukuran halaman ke A4
img2pdf gambar.jpg --pagesize A4 -o output.pdf
Berbeda dari ImageMagick atau Ghostscript, img2pdf tidak mendekompres dan mengompres ulang data gambar. Kualitas gambar di PDF identik dengan input.
ImageMagick (command line)
# Satu gambar
convert gambar.jpg output.pdf
# Beberapa gambar menjadi satu PDF
convert hal1.jpg hal2.jpg hal3.jpg output.pdf
# Atur DPI untuk ukuran fisik yang tepat
convert -density 150 gambar.jpg output.pdf
# PNG dengan transparansi — ratakan ke putih sebelum konversi
convert gambar.png -background white -flatten output.pdf
Di Ubuntu, ImageMagick sering memblokir output PDF secara default. Jika muncul "not authorized":
sudo nano /etc/ImageMagick-6/policy.xml
# Cari: <policy domain="coder" rights="none" pattern="PDF" />
# Ubah ke: <policy domain="coder" rights="read|write" pattern="PDF" />
Python: Pillow
from PIL import Image
# Satu gambar ke PDF
with Image.open('gambar.jpg') as img:
img.convert('RGB').save('output.pdf')
# Beberapa gambar menjadi satu PDF
images = [Image.open(f).convert('RGB') for f in ['hal1.jpg', 'hal2.jpg', 'hal3.jpg']]
images[0].save('output.pdf', save_all=True, append_images=images[1:])
Python: img2pdf (tanpa kompresi ulang)
import img2pdf
# Satu gambar
with open('output.pdf', 'wb') as f:
f.write(img2pdf.convert('gambar.jpg'))
# Beberapa gambar
with open('output.pdf', 'wb') as f:
f.write(img2pdf.convert(['hal1.jpg', 'hal2.jpg', 'hal3.jpg']))
Menggabungkan folder halaman hasil scan
import img2pdf
from pathlib import Path
halaman = sorted(Path('scan/').glob('*.jpg'))
with open('dokumen.pdf', 'wb') as f:
f.write(img2pdf.convert([str(h) for h in halaman]))
print(f'Menggabungkan {len(halaman)} halaman menjadi dokumen.pdf')
Pengurutan berdasarkan nama file menjaga urutan halaman. Jika scanner memberi nama file berdasarkan tanggal atau nomor urut, sorted() menanganinya secara otomatis.
Ukuran halaman dan DPI
Sebagian besar converter mengatur ukuran halaman PDF agar sesuai dengan dimensi gambar. Untuk ukuran kertas standar:
# img2pdf: sesuaikan gambar ke halaman A4
img2pdf gambar.jpg --pagesize A4 -o output.pdf
# ImageMagick: A4 pada 150 DPI
convert -density 150 -page A4 gambar.jpg output.pdf
Panduan DPI untuk dokumen hasil scan:
| Kasus penggunaan | DPI | Catatan |
|---|---|---|
| Membaca di layar | 96–150 | File kecil, mudah dibaca |
| Cetak standar | 150–200 | Kualitas bagus, ukuran wajar |
| Arsip / legal | 300 | File besar; menjaga detail halus |
Ringkasan
img2pdfadalah pilihan terbaik untuk konversi tanpa kompresi ulang di command line.save('output.pdf', save_all=True, append_images=...)dari Pillow menggabungkan beberapa gambar menjadi satu PDF.- PNG dengan transparansi perlu diratakan ke latar putih sebelum konversi.
- Urutkan nama file sebelum menggabungkan halaman scan agar urutan halaman tidak berantakan.
- Gunakan 150 DPI untuk dokumen yang hanya dibaca di layar; 300 DPI untuk cetak atau arsip.