Sunday, October 13, 2013

Multi Colomn Di PDF Menggunakan Java

Setelah postingan tentang PDF sebelumnya kita sudah belajar untuk tahap awal membuat file PDF, sekarang kita akan melanjutnya untuk membuat multi column di PDF.
Dengan Multi Column kita bisa mengatur 1 halaman menjadi beberapa bagian sesuai dengan kebutuhan.
Di java untuk membuat multi column kita akan menggunakan library lowagie.

Untuk contoh scripnya bisa dilihat dibawah ini :

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package speak;

import com.lowagie.text.Document;
import com.lowagie.text.Element;
import com.lowagie.text.Font;
import com.lowagie.text.FontFactory;
import com.lowagie.text.Paragraph;
import com.lowagie.text.pdf.MultiColumnText;
import com.lowagie.text.pdf.PdfWriter;
import java.awt.Color;
import java.io.FileOutputStream;
import java.io.OutputStream;




/**
 *
 * @author xxx
 */
public class MultiColumnRegularColumnsPDF {
    public static void main(String[] args) {
  try {
      Document document = new Document();
      OutputStream out = new FileOutputStream("D:/MultiColumnSimplePDF.pdf");
      PdfWriter.getInstance(document, out);
      document.open();

      MultiColumnText mct = new MultiColumnText();

      mct.addRegularColumns(document.left(), document.right(), 10f, 4);

      for (int i = 0; i < 30; i++) {
        mct.addElement(new Paragraph(String.valueOf(i + 1)));

        Paragraph p = new Paragraph("text text text text text text text text text text text text text text text text text text text text text text text text text text text ", FontFactory.getFont("Helvetica", 10, Font.BOLDITALIC, Color.BLACK));
        p.setAlignment(Element.ALIGN_CENTER);
        p.setLeading(12f);
        mct.addElement(p);
      }
      document.add(mct);
      document.add(mct);
      document.close();
    } catch (Exception e) {
      e.printStackTrace();
    }
  }
  }

Contoh Hasil setelah program dijalankan

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.