import com.itextpdf.text.Chunk;
import com.itextpdf.text.Document;
import com.itextpdf.text.DocumentException;
import com.itextpdf.text.Font;
import com.itextpdf.text.List;
import com.itextpdf.text.ListItem;
import com.itextpdf.text.Paragraph;
import com.itextpdf.text.pdf.BaseFont;
import com.itextpdf.text.pdf.ColumnText;
import com.itextpdf.text.pdf.PdfContentByte;
import com.itextpdf.text.pdf.PdfWriter;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;

public class PdfTest {    
    public static void main (String[] argv) {
	String outFileName = "pdftest_out.pdf";
	FileOutputStream fos = null;
	try {
	    File outFile = new File (outFileName);
	    Document document = new Document();
	    fos = new FileOutputStream (outFileName);
	    PdfWriter writer = PdfWriter.getInstance (document, fos);
	    document.open();
	    document.newPage();

	    PdfContentByte pcb = writer.getDirectContent();
	    ColumnText ct = new ColumnText (pcb);
	    ct.setSimpleColumn 
		(document.left(), document.bottom(), 
		 document.right(), document.top());
	    BaseFont bf = BaseFont.createFont
		(BaseFont.HELVETICA, BaseFont.CP1252, 
		 BaseFont.NOT_EMBEDDED);
	    Font font = new Font (bf, 12);
	    Paragraph container = new Paragraph();
	    String[] listItems = {"One", "Two", "Three", "Four"};
	    List list = new List(List.UNORDERED);
	    for (int i=0; i<listItems.length; ++i) {
		ListItem li = new ListItem();
		Chunk chunk = new Chunk (listItems[i], font);
		li.add (chunk);
		list.add (li);
	    }
	    container.add (list);
	    ct.addElement (container);
	    ct.go();
	    document.close();
	    fos.close();
	} catch (DocumentException de) {
	    System.err.println (de.getMessage());
	} catch (IOException ioe) {
	    System.err.println (ioe.getMessage());
	}
    }
}
