Thursday, May 26, 2016

[Tips] Ubah file pdf ke gambar (jpeg / png / tif) dengan imagemagick

Hari ini ada yang minta bantuan untuk mengubah file pdf ke dalam file gambar. File pdfnya cukup besar sering gagal menggunakan tools online. Kebetulan pernah ada kerjaan bikin aplikasi web upload pdf kemudian dibaca dengan ocr dan textnya dapat disimpan ke dalam database menggunakan  Tesseract OCR. Untuk tesseract sendiri parameter yang diambil adalah file gambar, sehingga harus ada proses mengubah file pdf tersebut menjadi file gambar lebih dahulu.

Hal ini dapat dilakukan menggunakan imagemagick yang dapat di download  di sini (termasuk versi Windows-nya). Install imagemagick kemudian dari command prompt (cmd) ketik
"convert -density 300 -trim file_asal.pdf file_target.jpg" , density untuk mengatur resolusi gambar dalam dpi untuk contoh di atas 300 sedangkan trim untuk memotong bagian kosong diluar gambar. Berikut contoh penggunaanya:



Jika file pdfnya terdiri dari lebih dari 1 halaman(misal 3 halaman) maka secara otomatis akan membuat 3 file jpg dengan tambahan index pada namanya nya -0, -1, -2 tampak sebagai berikut:


Untuk menjalankan proses ini pada PHP dapat dilakukan dengan perintah exec. Sebetulnya selain mengubah file pdf ke image, masih banyak lagi yang dapat dilakukan dengan imagemagick seperti resize, crop, effect yang dapat dilihat pada website imagemagick. Semoga bermanfaat deh, silakan mencoba.