PAPER TUGAS AKHIR PERIODE JANUARI 2012 APLIKASI CERDAS LAYANAN WEB UNTUK PERCETAKAN BERKAS MICROSOFT WORD, MICROSOFT POWERPOINT, DAN PORTABLE DOCUMENT FORMAT Arya Bramandita, Umi Laili Yuhana, Diana Purwitasari Jurusan Teknik Informatika, Fakultas Teknologi Informasi, Institut Teknologi Sepuluh Nopember, 1 [email protected] [email protected] 3 [email protected] 2 Abstrak Dalam Tugas Akhir ini, framework .NET berbahasa C# digunakan untuk mengimplementasikan aplikasi layanan web untuk mencetak berkas Microsoft Word, Microsoft Powerpoint, dan PDF. Pada proses cetak biasanya pengguna harus membuka berkas terlebih dahulu unruk membuka print dialog. Kemudian pengguna harus menghitung secara manual harga cetak berdasarkan jumlah halaman dan jenis warna halaman yang dicetak. Kedua aktivitas ini dapat diotomatisasi untuk mempercepat proses cetak. Ada beberapa tahapan dalam Tugas Akhir ini. Tahap pertama adalah membaca berkas yang ingin dicetak dan menkonversinya menjadi berkas PDF yang diperlukan untuk proses mencetak berkas. Selanjutnya berkas PDF dikonversi menjadi berkas image PNG yang diperlukan untuk proses pemeriksaan warna berkas. Tahap berikutnya adalah mencetak berkas sesuai dengan halaman tertentu yang diinginkan dan menghasilkan keluaran harga total cetak berkas berdasarkan warna berkas yang dicetak. Dengan melakukan percobaan ini terbukti bahwa melakukan cetak berkas, dalam kasus ini pada server-client, menjadi lebih mudah, karena baik dari pengguna client maupun server tidak perlu membuka berkas terlebih dahulu atau menghitung jumlah halaman berkas. Aplikasi juga membantu menghitung total harga cetak yang harus dibayarkan sesuai dengan acuan harga cetak yang telah ditentukan. I. PENDAHULUAN 1. Latar belakang masalah Di tengah perkembangan teknologi yang pesat, tidak dipungkiri lagi bahwa kita masih perlu mencetak berkas dokumen kita selain menyimpannya dalam bentuk data berkas (softcopy) di komputer atau alat penyimpanan data yang kita miliki. Berkas yang kita cetak pun beragam mulai dari tugas, laporan sampai buku Tugas Akhir sekalipun. Namun terdapat sebagian orang yang tidak memiliki alat cetak, atau yang biasa kita sebut printer. Dari fenomena tersebut akhirnya muncul suatu ide dari beberapa orang untuk mendirikan Usaha Kecil Menengah (UKM) penyedia layanan jasa cetak berkas yang ramai didirikan di dekat perkantoran, sekolah, dan kampus. UKM layanan jasa cetak berkas ini sangat berguna bagi orang-orang yang ingin mencetak beberapa berkas tetapi tidak memiliki printer. Mereka hanya perlu mendatangi UKM layanan jasa cetak berkas tersebut dan membawa berkas yang ingin dicetak dalam bentuk softcopy. Kemudian penyedia jasa akan mencetak berkas tersebut dan pengguna jasa membayar sejumlah uang berdasarkan jenis kertas, kadar warna, dan jumlah lembar pada berkas yang dicetak. Di dalam proses mencetak berkas tersebut, biasanya penyedia jasa membagi dua jenis pencetakan berkas, yaitu pencetakan berkas hitamputih dan berkas berwarna. Hal ini berguna untuk mengoptimalkan kinerja dan tinta printer yang mereka gunakan. Ketika mereka akan mencetak berkas hitam-putih, mereka akan menggunakan printer yang dikhususkan untuk mencetak berkas hitam-putih, dan untuk mencetak berkas berwarna, mereka akan menggunakan printer yang dikhususkan untuk mencetak berkas berwarna. Kata Kunci: Cetak Berkas Otomatis, Setelah mencetak semua berkas yang diinginkan, penyedia jasa akan menghitung jumlah lembar Pendeteksi Jenis Warna Halaman Berkas. yang dicetak dan menentukan harga yang harus dibayar oleh pengguna jasa. Proses pencetakan berkas yang dilakukan oleh penyedia layanan jasa percetakan berkas ini memakan waktu dan sedikit merepotkan karena masih terdapat tahapan-tahapan manual yang 1 ARYA BRAMANDITA - 5107100134 PAPER TUGAS AKHIR PERIODE JANUARI 2012 seharusnya bisa dibuat secara otomatis sehingga memudahkan kinerja penyedia jasa. Tahapantahapan manual tersebut adalah sebagai berikut. II. TINJAUAN PUSTAKA 1. Web Services merupakan salah satu bentuk implementasi dari arsitektur model aplikasi N-Tier yang berorientasi layanan. Perbedaan Web Services dengan pendekatan N-Tier lainnya adalah dari segi infrastruktur dan dokumen yang digunakan sebagai format pertukaran data. Dalam implementasinya, Web Services tidak mempunyai tampilan, karena Web Services termasuk dalam Business-Service tier. Artinya didalam Web Services hanya tersedia fungsi-fungsi yang nantinya dapat digunakan oleh aplikasi lainnya Web Services menggunakan XML sebagai format dokumen dalam melakukan pertukaran datanya. Karena XML merupakan suatu format dokumen yang berbasis teks, maka Web Services memungkinkan berlangsungnya komunikasi antar aplikasi yang berbeda dengan platform yang berbeda pula. Web Services dapat diimplementasikan dalam berbagai jenis platform dengan menggunakan bahasa pemrograman apa pun, dan bisa digunakan oleh berbagai aplikasi yang menggunakan bahasa pemrograman apapun dengan platform apapun juga. Selama aplikasi tersebut dapat berkomunikasi dengan Web Services menggunakan protokol-protokol komunikasi. Termasuk HTTP, XML, SOAP, UDDI (Universal Description Discovery and Integration), dan WSDL (Web Services Description Language). XML Web Services dapat digunakan secara internal oleh suatu aplikasi atau secara external. Digunakan secara external di sini maksudnya yaitu XML Web Services terdapat pada internet dan digunakan oleh berbagai macam aplikasi. XML Web Services mudah diakses melalui interface standar dan XML Web Services juga mengijinkan bermacam-macam sistem untuk bekerja bersamasama dalam sebuah pekerjaan. Web Services memiliki blok bangunan sebagai berikut. 1. Memilih printer yang akan digunakan berdasarkan jenis berkas yang dicetak (hitam-putih atau berwarna). 2. Menghitung biaya cetak berkas berdasarkan kadar warna, jumlah lembar, dan ukuran kertas yang digunakan. Kemungkinan dapat terjadi salah menghitung biaya. 3. Penyedia jasa harus membuka berkas yang ingin dicetak di komputer mereka sehingga jika ada konten yang bersifat privasi pada berkas tersebut kemungkinan akan terbaca oleh penyedia jasa. Semua tahapan-tahapan manual tersebut dapat dibuat secara otomatis sehingga meminimalisasi kekurangan-kekurangan yang terdapat pada UKM layanan jasa cetak berkas ini. Salah satu solusinya adalah perlunya suatu aplikasi yang dapat mengatasi kekurangan tersebut. 2. Tujuan Tugas akhir ini bertujuan membantu kinerja penyedia layanan jasa pada UKM layanan jasa cetak berkas dengan membangun aplikasi cerdas yang dapat dipasang pada tiap komputer yang dimiliki oleh penyedia jasa tersebut. 3. Batasan masalah Permasalahan yang dibahas dalam Tugas Akhir ini memiliki beberapa batasan, diantaranya sebagai berikut. 1. 2. 3. 4. 5. Layanan Web (Web Service)[3] Aplikasi ini digunakan hanya untuk berkas Microsoft Word, Microsoft PowerPoint, dan Portable Document Format. Aplikasi tidak mengenali apakah status printer dalam online atau offline. Aplikasi hanya mengenali printer yang ter-install. Aplikasi ini merupakan aplikasi desktop dengan layanan web yang hanya dapat digunakan pada komputer yang telah memasang (meng-install) klien. Teknologi yang digunakan adalah bahasa pemrograman C# berbasis .NET. Aplikasi tidak memiliki kemampuan untuk mengidentifikasi kerusakan pada printer yang digunakan. 2 Menggunakan UDDI dan DISCO sebagai sarana pencarian service Menggunakan WSDL dan XML Schema sebagai sarana untuk menjelaskan informasi yang memadai kepada client tentang spesifikasi Web Services itu sendiri. Biasanya disertai dengan contoh penggunaannya bila parameter yang diperlukan hanya berupa tipe data primitif. Format pesan yang digunakan sebagai sarana komunikasi Web Services dengan client maupun service lainnya didefinisikan dengan SOAP Pengkodean pesan yang digunakan Web Services adalah dalam format XML ARYA BRAMANDITA - 5107100134 PAPER TUGAS AKHIR PERIODE JANUARI 2012 3. Pendeteksi Warna Pendeteksi warna yang dimaksud adalah pendeteksi warna pada tiap halaman berkas yang ingin dicetak. Algoritma yang digunakan adalah algoritma membaca tiap pixel pada halaman berkas tersebut. Piksel halaman yang dibaca digolongkan dalam 2 golongan, yaitu piksel berwarna dan piksel hitam-putih. Definisi piksel berwarna dan hitam-putih ditampilkan pada tabel 1. Transportasi pesan menggunakan protokol standar, yaitu HTTP, SMTP, dan lain-lainnya. Berikut gambaran sederhana konsep Web Services serta keterhubungan antara Web Services dengan aplikasi client maupun server Web Service memiliki tiga entitas dalam arsitekturnya, yaitu Service Requester (peminta layanan), Service Provider (penyedia layanan), dan Service Registry (daftar layanan). Tabel 1 Definisi piksel berwarna dan hitam-putih Piksel berwarna (non-grayscale) Service Requester adalah peminta layanan yang mencari dan menemukan layanan yang dibutuhkan serta menggunakan layanan tersebut. Service Provider berfungsi untuk menyediakan layanan dan mengolah sebuah registry agar layanan tersebut dapat tersedia. Service Registry berfungsi sebagai pusat lokasi yang mendeskripsikan semua layanan yang telah didaftarkan.[3] 2. Piksel hitam-putih (grayscale) R != G atau G != B atau R != B R = G dan R = B dan G=B Setiap piksel diwakili oleh nilai komposisi R (red), G (green), dan B (blue). Jika nilai R, G, dan B sama semua maka piksel tersebut digolongkan hitam-putih, sedangkan jika nilai R, G, dan B ada yang tidak sama di antara ketiganya maka piksel tersebut digolongkan berwarna. Dari semua piksel pada tiap halaman berkas yang sudah digolongkan dengan pendeteksi warna, jika ada satu saja piksel yang termasuk piksel berwarna maka halaman tersebut diidentifikasi sebagai halaman berwarna. DynamicPDFTM Rasterizer .NET[5] DynamicPDF Rasterizer adalah library untuk mengkonversi berkas PDF menjadi image dengan format piksel. Proses ini membuat aplikasi dapat melakukan pemeriksaan warna pada tiap halaman PDF dengan berdasarkan hasil konversi yang berupa image berpiksel. DynamicPDF Rasterizer memiliki semua fitur yang dibutuhkan untuk menkonversi berkas PDF menjadi image. Hasil konversi bisa berupa berkas image BMP, GIF, JPEG, TIFF atau menjadi class System.Drawing.Bitmap untuk manipulasi lebih lanjut. Dengan menggunakan DynamicPDF Rasterizer, mengkonversi berkas dari PDF menjadi images hanya melakukan beberapa tahap. Dalam proses ini hanya terdapat dua baris kode untuk mengkonversi. III. 1. ANALISIS & PERANCANGAN PERANGKAT LUNAK Deskripsi Umum Pada bab ini akan diuraikan mengenai perancangan sistem perangkat lunak agar dapat mencapai tujuan dari Tugas Akhir. Perancangan proses dibagi menjadi dua, yaitu perancangan proses pada server dan perancangan proses pada client. Perancangan proses dilakukan untuk mengetahui alur dalam penerapan algoritma yang nantinya akan dipakai dalam tahap implementasi. Alur tersebut akan ditampilkan dalam diagram alir dari masing-masing proses. Pada bab ini juga ditunjukkan desain aplikasi yang diterapkan pada pembuatan Tugas Akhir. Desain aplikasi terdiri dari use case diagram aplikasi client maupun server, activity diagram dari masing-masing use case, sequence diagram, dan class diagram. PdfRasterizer pdf = new PdfRasterizer("C:\\DocumentA.pdf"); pdf.Draw("C:\\DocumentA_Page.png", ImageFormat.Png, ImageSize.Dpi72); Gambar 1 Baris kode konversi PDF ke image Baris kode pertama merupakan konstruksi class PdfRasterizer dengan parameter lokasi berkas PDF yang ingin dikonversi. Pada baris kode kedua adalah membuat berkas image yang diinginkan dengan parameter tujuan lokasi berkas, format image (dalam kasus ini menggunakan format PNG), dan ukuran DPI image. 2. Perancangan Proses Server Perancangan proses server ini diterapkan pada aplikasi server. Diagram alirnya ditunjukkan pada Gambar 2. Pada proses ini pengguna memasukkan harga cetak masing-masing untuk cetak berwarna dan hitam-putih, serta memasukkan printer yang digunakan. Dalam tahap menyimpan data 3 ARYA BRAMANDITA - 5107100134 PAPER TUGAS AKHIR PERIODE JANUARI 2012 masukan, data printer dicocokkan dengan printer yang ter-install pada komputer server. MULAI SELESAI MASUKAN HARGA CETAK DAN PRINTER YANG DIGUNAKAN SIMPAN DATA MASUKAN Pada proses masukan berkas yang ingin dicetak (upload), aplikasi akan menyalin berkas yang ingin dicetak dan menamainya menjadi print.doc (jika berkas yang ingin dicetak berekstensi .doc). Proses mendeteksi warna melakukan beberapa tahap, yaitu tahap konversi berkas menjadi berkas PDF, tahap konversi berkas PDF menjadi berkas image PNG lalu tahap membaca piksel image. Proses konversi berkas Microsoft Word menjadi berkas PDF menggunakan library Microsoft.Office.Interop.Word dan konversi berkas Microsoft Powerpoint menjadi berkas PDF menggunakan library Microsoft.Office.Interop.PowerPoint. Sedangkan dalam proses konversi berkas PDF menjadi berkas image menggunakan library PdfRasterizer. Tahap membaca piksel image adalah program membaca semua piksel dalam suatu berkas image. Jika terdapat minimal satu piksel non-grayscale (nilai R tidak sama dengan nilai G, atau nilai R tidak sama dengan nilai B, atau nilai G tidak sama dengan nilai B) maka image tersebut digolongkan halaman berwarna. Jika tidak terdapat piksel non-grayscale maka digolongkan halaman hitam-putih. Pada proses print (cetak) berkas, aplikasi akan mencetak berkas hasil konversi menjadi PDF dengan menggunakan bantuan aplikasi AcrobatReader. Dengan cara ini memungkinkan berkas dapat dicetak tanpa membuka berkas tersebut dan tanpa membuka print dialog. Gambar 2 Alur proses server Pada proses masukan, pengguna memasukkan nilai harga untuk cetak hitam-putih, harga untuk cetak berwarna, printer yang digunakan untuk cetak hitam-putih, dan printer yang digunakan untuk cetak berwarna pada textbox yang tersedia. Pada proses simpan data masukan, aplikasi menyimpan data masukan ke dalam berkas config.txt. Config.txt berisikan informasi tentang printer yang digunakan dan harga cetak yang telah ditentukan. 3. Perancangan Proses Client Perancangan proses client diterapkan pada aplikasi client. Diagram alirnya ditunjukkan pada Gambar 3. Pada proses ini pengguna memasukkan berkas yang ingin dicetak. Berkas yang dimaksud harus berupa berkas dokumen (.doc dan .docx), berkas presentasi (.ppt dan .pptx), dan berkas pdf. Pada proses mendeteksi warna terdapat beberapa tahapan proses, yaitu pengkonversian berkas menjadi image PNG dan pembacaan warna. MULAI IV. Pada bab ini akan dijelaskan mengenai rangkaian uji coba dan evaluasi yang dilakukan. Pembahasan yang dikemukakan meliputi data uji coba, hasil uji coba, dan evaluasi. Lingkungan uji coba yang digunakan dalam pembuatan Tugas Akhir ini meliputi perangkat lunak dan perangkat keras yang digunakan untuk menjalankan aplikasi cerdas layanan web untuk berkas Microsoft Word, Microsoft Powerpoint, dan PDF. Lingkungan uji coba meliputi komputer server, komputer client, printer untuk cetak berwarna, dan printer untuk cetak hitam-putih. SELESAI HASIL CETAK BERKAS DAN BIAYA YANG HARUS DIBAYAR BERKAS YANG INGIN DICETAK UJI COBA DAN EVALUASI TIDAK 1. CETAK BERKAS BERKAS .DOC, .DOCX, .PPT, .PPTX, .PDF YA Mengubah Konfigurasi Harga Cetak dan Printer Skenario uji coba mengubah konfigurasi harga cetak dan printer dilakukan pada komputer server dan menjalankan aplikasi server. Langkah pertama dalam uji coba ini adalah membuka aplikasi server pada komputer server. Pada tampilan pada aplikasi server terdapat empat kolom masukan, yaitu sebagai berikut. MENDETEKSI WARNA HALAMAN BERKAS Gambar 3 Alur proses client 4 ARYA BRAMANDITA - 5107100134 PAPER TUGAS AKHIR PERIODE JANUARI 2012 tidak ingin mengubah konfigurasi sebelumnya maka klik tombol Cancel. Sesudah klik tombol OK, aplikasi server akan menutup dengan sendirinya dan semua pengisisan konfigurasi tadi akan disimpan dalam config.txt. Format penulisan konfigurasi pada config.txt ditunjukkan pada Gambar 5. Tabel 2 Penjelasan kolom isian pada tampilan aplikasi server Kolom Black and White Color Black and White Printer Color Printer Masukan Diisi nilai harga cetak per halaman untuk berkas hitam-putih. Diisi nilai harga cetak per halaman untuk berkas berwarna. Diisi nama printer untuk cetak berkas hitam-putih. Diisi nama printer untuk cetak berkas berwarna. Untuk kolom Black and White dan kolom Color diisikan nilai integer positif. Sedangkan untuk kolom Black and White Printer dan kolom Color Printer diisikan nama printer dengan cara memilih dropdown list yang sudah tersedia. Dalam uji coba ini, kolom Black and White diisi dengan nilai 100. Isian ini menunjukkan bahwa harga cetak untuk berkas hitam-putih adalah 100 rupiah per halaman. Sedangkan untuk kolom Color diisi dengan nilai 200. Isian ini menunjukkan bahwa harga cetak untuk berkas berwarna adalah 200 rupiah per halaman. Kemudian untuk kolom Black and White Printer, dipilih Epson Stylus C45 series. Pilihan ini menunjukkan bahwa printer yang digunakan untuk cetak berkas hitam-putih adalah printer Epson Stylus C45 series. Sedangkan untuk kolom Color Printer, dipilih HP Photosmart C4500 series. Pilihan ini menunjukkan bahwa printer yang digunakan untuk cetak berkas berwarna adalah printer HP Photosmart C4500 series. Contoh pengisian kolom ditunjukkan pada Gambar 4. Gambar 5 Format penulisan config.txt Pada config.txt terdapat empat baris tulisan. Baris pertama merupkan nilai dari harga cetak untuk berkas hitam-putih. Sesuai dengan pengisian konfigurasi sebelumnya maka baris pertama bertuliskan angka 100. Sedangkan pada baris kedua merupakan nilai dari harga cetak untuk berkas berwarna. Sesuai dengan pengisian konfigurasi sebelumnya juga maka baris kedua bertuliskan angka 100. Pada baris ketiga merupakan nama printer untuk cetak berkas hitam-putih. Sesuai dengan pengisian konfigurasi sebelumnya maka baris ketiga bertuliskan Epson Stylus C45 series. Sedangkan pada baris keempat merupakan nama printer untuk cetak berkas berwarna. Sesuai dengan pengisian konfigurasi sebelumnya juga maka baris keempat bertuliskan HP Photosmart C4500 series. Untuk mengetahui apakah konfigurasi sebelumnya benar-benar tersimpan pada config.txt adalah dengan cara membuka kembali aplikasi server. Kolom Black and White langsung terisi 100, kolom Color langsung terisi 200, kolom Black and White Printer langsung terisi Epson Stylus C45 series, dan kolom Color Printer langsung terisi HP Photosmart C4500 series. Dengan terisinya kolom-kolom tersebut dengan sendirinya sesuai dengan konfigurasi sebelmunya, maka proses pengisian konfigurasi sudah berjalan dengan baik. 2. Memeriksa detail warna berkas Untuk menjalankan skenario uji coba ini menggunakan aplikasi client. Tampilan awal aplikasi client ditunjukkan pada Gambar 6. Gambar 4 Pengisian klom pada aplikasi server Setelah semua kolom diisikan, maka langkah selanjutnya adalah klik tombol OK. Jika 5 ARYA BRAMANDITA - 5107100134 PAPER TUGAS AKHIR PERIODE JANUARI 2012 samplePpt.ppt merupakan halaman hitam-putih, halaman 2 pada berkas samplePpt.ppt merupakan halaman berwarna, dan halaman 3 pada berkas samplePpt.ppt merupakan halaman hitam-putih. Tabel 5.8 menunjukkan perbandingan hasil dengan data uji coba. Tabel 3 Perbandingan data uji coba dengan hasil uji coba Data Uji Coba Hasil Uji Coba halaman 1 : [BW] Gambar 6 Tampilan awal aplikasi client Pada aplikasi client tab PrintPPT terdapat kolom Presentation File untuk masukan berkas Microsoft Powerpoint dan kolom Number of copies untuk masukan jumlah cetak berapa kali. halaman 2 : [Color] halaman 3 : [BW] 3. Mencetak Berkas[6] Skenario uji coba mencetak berkas Microsoft Powerpoint menggunakan data uji coba samplePpt.ppt. Untuk melakukan uji coba ini, harus melakukan uji coba memeriksa detail warna terlebih dahulu. Sehingga untuk uji coba ini akan meneruskan uji coba memeriksa detail warna berkas Microsoft Powerpoint. Pada langkah setelah memeriksa detail warna berkas Microsoft Powerpoint dan keluar hasil detail warna pada kolom Detail, setelah itu klik tombol Print. Setelah tombol Print diklik maka printer yang tersambung pada komputer server akan memulai proses cetak sejumlah halaman yang diperiksa detail warnanya pada uji coba sebelumnya. Gambar 7 Tampilan uji coba memeriksa warna Microsoft Powerpoint Langkah awal yang dilakukan adalah dengan mengunggah berkas Microsoft Powerpoint dengan klik tombol Browse. Setelah keluar jendela Open maka pilih berkas samplePpt.ppt pada direktori pengguna. Klik tombol Open maka lokasi berkas (path) Microsoft Powerpoint akan tertulis pada kolom Presentation File. Setelah itu klik Tombol Check Detail and Cost, maka akan muncul detail warna berkas pada kolom Detail seperti pada Gambar 7. Pada kolom Detail menunjukkan hasil berupa tulisan, yaitu halaman 1 : [BW] halaman 2 : [Color] halaman 3 : [BW]. Hasil menjelaskan bahwa halaman 1 pada berkas 4. Evaluasi Lama proses aplikasi berjalan dari mulai pengguna memasukkan berkas sampai semua halaman berkas tercetak berbanding lurus dengan banyaknya halaman yang ingin dicetak. Karena proses pemeriksaan warna berkas melakukan 6 ARYA BRAMANDITA - 5107100134 PAPER TUGAS AKHIR PERIODE JANUARI 2012 toleransi terhadap halaman yang hanya mengandung konten tulisan kecil hitamputih adalah menambahkan algoritma perbaikan citra. Tidak dimungkinkan untuk menambah nilai DPI karena akan mengakibatkan aplikasi berjalan lambat. 2. Untuk fitur opsi mencetak halaman tertentu seharusnya juga bisa dijalankan saat cetak berkas jenis Microsoft Powerpoint dan PDF. iterasi sebanyak halaman berkas yang ingin dicetak. Proses pendeteksian warna untuk berkas Microsoft Word dan Microsoft Powerpoint sama, yang berbeda adalah proses untuk berkas PDF, karena tidak perlu melakukan konversi ke PDF. Best Case aplikasi ini adalah ketika semua halaman berkas yang dideteksi warnanya tidak mengandung piksel grascale pada piksel (0,0). Sehingga iterasi langsung berhenti dan menyatakan bahwa halaman berkas tersebut termasuk halaman berwarna. Worst Case aplikasi ini adalah ketika semua halaman berkas yang dideteksi warnanya mengandung piksel grayscale. Sehingga program akan terus melakukan iterasi sampai semua piksel terbaca dan halaman berkas tersebut akan dinyatakan termasuk berkas hitam-putih. Untuk halaman berkas yang hanya mengandung konten tulisan hitam-putih berukuran kecil cenderung akan digolongkan pada halaman berwarna. Hal ini dikarenakan berkas dikonversi menjadi image PNG yang memiliki DPI 150. Nilai DPI ini mempengaruhi kualitas image PNG yang dihasilkan. Semakin tinggi nilai DPI maka kualitas image PNG semakin baik, namun mengakibatkan aplikasi berjalan semakin lambat. Sehingga pemeriksaan warna pada berkas memiliki batasan toleransi pada tulisan hitam-putih. V. DAFTAR PUSTAKA [1] Thakur, Vivek. 2008. ASP.NET 3.5 Application Architecture and Design. Packt Publishing, Birmingham, UK [2] Rasheed, Faraz. 2006. Programmer’s Heaven C# School First Edition. Synchron Data S.L Av. Clemente Diaz Ruiz Urb.Puebla Lucia local 7, 12-20, Fuengirola, Spain [3] SlideShare, WebService (http://www.slideshare.net/guest44af87/w eb-services-3445761, diakses 13 Maret 2011) [4] MSDN Blogs Pranab Paul's Blog Development Tips on SharePoint, Web, Office and OCS, Convert Office Documents (.docx, .pptx, .pub) into PDF Programmatically (http://blogs.msdn.com/b/pranab/archive/ 2008/09/24/convert-office-documentsdocx-pptx-pub-into-pdfprogrammatically.aspx, diakses 5 Maret 2011) [5] CeTeSoftware, DynamicPDFTM Rasterizer For .NET (http://www.cete.com/Products/Dynamic PDFRasterizerforNET/, diakses 5 Maret 2011) [6] MSDN Developers Code With Microsoft, Win32_Printer Class (http://msdn.microsoft.com/enus/library/aa394363%28v=vs.85%29.aspx , diakses 5 Maret 2011) V. KESIMPULAN DAN SARAN Berdasarkan hasil uji coba yang telah dilakukan, terdapat beberapa kesimpulan yang dapat diambil, yaitu: 1. Dengan menggunakan aplikasi ini terbukti bahwa melakukan cetak berkas pada server-client menjadi lebih mudah, karena baik dari pengguna client maupun server tidak perlu membuka berkas terlebih dahulu atau menghitung jumlah halaman berkas. 2. Algoritma pembacaan warna berkas memiliki kelemahan pada halaman berkas yang hanya memiliki konten tulisan hitam-putih berukuran kecil. Algoritma cenderung akan mengatakan bahwa halaman tersebut digolongkan pada halaman berwarna. Hal ini disebabkan DPI image PNG hasil konversi tidak terlalu besar. 3. Opsi untuk mencetak halaman tertentu hanya berlaku pada cetak berkas Microsoft Word. Untuk cetak berkas Microsoft Powerpoint dan PDF tidak menyediakan fitur tersebut. Adapun saran yang ingin disampaikan penulis terkait dengan pengerjaan Tugas Akhir ini adalah: 1. Untuk mengatasi algoritma pembacaan warna berkas yang memiliki batasan 7 ARYA BRAMANDITA - 5107100134