Archive for June, 2013

Minifikasi pdf.js dengan yuicompressor

June 23, 2013

Minifikasi pdf.js ternyata tidak semudah yang dibayangkan. Masalah ini pun sempat ramai didiskusikan di forum pengguna pdf.js. Setelah ujicoba sana sini akhirnya berhasil juga minifikasi menggunakan yui-compressor. Oke ini langkah umumnya. detail penggunaannya silahkan berpedoman pada dokumentasi ya.

1. Download pdf.js dari https://github.com/mozilla/pdf.js atau clone dengan sintaks:
git clone https://github.com/mozilla/pdf.js.git pdfjs

Didalam folder pdfjs tersebut ada file web/viewer.html yang bisa digunakan untuk melihat demo pdf.js. Tetapi hanya bisa diakses via web server karena beberapa browser tidak membolehkan membuka file pdf dengan URL file://. Jika tidak ada web server, bisa menggunakan nodejs (node make server).

pdfjs

2. Untuk mendistribusikan pdf.js kedalam aplikasi kita, maka perlu dikompilasi agar file js didalam folder src mejadi satu file pdf.js. Untuk itu kita perlu nodejs (http://nodejs.org/). Karena saya pakai ubuntu server, maka agar cepat saya install nodejs dari paket ubuntu:
sudo apt-get install nodejs

3. Kompilasi pdf.js menjadi satu file:
cd pdfjs
node make generic

Langkah ini akan menghasilkan folder build/generic/build yang didalamnya terdapat pdf.js yang bisa kita tempelkan ke aplikasi lain. Juga didalam build/generic terdapat file javascript lain yang kita bisa manfaatkan buat aplikasi seperti compatibility.js untuk cross browser support dan folder web yang berisi demo viewer beserta contoh file pdf nya.

4. Oke sekarang kita mulai minifikasi file pdf.js-nya. Kenapa minifikasi? Silahkan googling untuk mendapatkan informasi minifikasi javascript. Untuk melakukan proses minifikasi kita akan menggunakan yui-compressor. Sekarang kita install dulu “ant” (tool untuk build seperti make di C). Di ubuntu paling gampang dengan menggunakan paket bawaan:
sudo apt-get install ant

5. Download yui-compressor dari https://github.com/yui/yuicompressor atau clone dengan perintah:
git clone https://github.com/yui/yuicompressor.git

6. Lakukan kompilasi yuicompressor:
cd yuicompressor
ant

7. Oke sekarang saatnya minifikasi:
java -jar /path_to_yuicompressor/build/yuicompressor-2.4.8.jar –nomunge –type js -v /path_to_pdfjs/build/generic/build/pdf.js -o /path_to_where_you_want_to_save_minified_version/pdf.min.js

pdf.min.js siap digunakan 🙂

Lakukan juga ke file yang lain seperti compatibility.js jika anda mau. Selamat mencoba 🙂