Tuesday, December 13, 2016

Mencetak dengan PdfBOX : Pendahuluan

Sebuah program lazimnya memiliki keluaran yang dapat dicetak. Belajar pemrograman secara wajar akan sampai kepada pertanyaan bagagaimanakah mencetak hasil pemrosesan data.
Untuk tahap awal kita akan mempelajari bagaimana mencetak sebuah berkas pdf. Untuk pertama kali kita akan mencetak : Roti Coklat.
Urut-urutan aktivitas yang kita lakukan adalah :

  1. Download library dari https://pdfbox.apache.org/download.cgi
  2. Kita akan memilih pdfbox-app-2.0.3.jar 7.9MB, pre-built PDFBox standalone binary
  3. Selanjutnya kita dowload
  4. Hasil download kita letakkan kedalam directory NetBeansProject
  5. Kita membuat project dalam bahasa java : Java Application
  6. Project tersebut bernama MencetakBerkasPDF
  7. KIta menambahkan jar/folder : RMB->Add JAR/Folder
  8. Kita pilih berkas pdfbox-app-2.0.3.jar
  9. Selanjutnya kita dapat menulis program
  10. Setelah menulis program kita jalankan
  11. Kemudian periksa directory MencetakBerkasPDF
  12. Didalamnya akan terdapat rotiku.pdf

Adapun kode program yang kita buat adalah sebagai berikut :

package mencetakberkaspdf;


import java.io.IOException;
import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.pdmodel.PDPage;
import org.apache.pdfbox.pdmodel.PDPageContentStream;
import org.apache.pdfbox.pdmodel.font.PDFont;
import org.apache.pdfbox.pdmodel.font.PDType1Font;

/**
 *
 * @author Joko Adianto
 * Kode program dibawah ini merupakan modfifikasi dari
 * kode program pada
 * https://pdfbox.apache.org/1.8/cookbook/documentcreation.html
 */
public class MencetakBerkasPDF {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) throws IOException {
        // Membuat dokumen
        PDDocument document = new PDDocument();

        //Membuat halaman
        PDPage page = new PDPage();
        document.addPage( page );

        // Untuk mencetak kita memerlukan jenis huruf(font)
        PDFont font = PDType1Font.COURIER;

        // Mebuat sebuah content stream yang mengandung isi yang akan dicetak
        PDPageContentStream contentStream = new PDPageContentStream(document, page);

        //Mulai mencetak    
        contentStream.beginText();
        contentStream.setFont( font, 18 );
        contentStream.moveTextPositionByAmount( 100, 700 );
        contentStream.drawString( "Roti Coklatku Enak Rasanya" );
        contentStream.endText();

        //Selesai mencetak stream ditutup
        contentStream.close();

        //Tuliskan kedalam berkas bernama rotiku.pdf
        try{
        document.save( "rotiku.pdf");
        document.close();
        }
        catch (IOException ioe){
            System.out.println(ioe.getMessage());
            System.out.println("Jika digunakan proses lain, TUTUP");
    }
 
}


No comments:

Post a Comment