如果不需要显示总页数(像X of Y , 当前是第X页,共Y页之类的),下面的方法就够.
在Document.open()之前加上

- HeaderFooter footer = new HeaderFooter(new Phrase(“页码:”,yourFont, true);
- footer.setBorder(Rectangle.NO_BORDER);
- document.setFooter(footer);

- public class PDFMaker extends PdfPageEventHelper {
- public PdfTemplate tpl;
- public BaseFont helv;
- public void make(Document doc) throws Exception
- {
- pdf = new com.lowagie.text.Document(pagesize,10,10,10,10);
- PdfWriter writer = PdfWriter.getInstance(pdf,pdfout);
- //设置页页事件监听器
- Font pageNumFont = new Font(bf_chn,9,Font.NORMAL);
- writer.setPageEvent(this);
- pdf.open();
- //正常的PDF写入操作代码
- pdf.close();
- }
- @Override
- public void onCloseDocument(PdfWriter writer, com.lowagie.text.Document arg1) {
- // TODO Auto-generated method stub
- System.out.println(“OCD”);
- tpl.beginText();
- tpl.setFontAndSize(helv, 12);
- tpl.setTextMatrix(0, 0);
- tpl.showText(“” + (writer.getPageNumber() – 1));
- tpl.endText();
- }
- @Override
- public void onEndPage(PdfWriter writer, com.lowagie.text.Document document) {
- // TODO Auto-generated method stub
- System.out.println(“OEP”);
- PdfContentByte cb = writer.getDirectContent();
- cb.saveState();
- String text = “Page ” + writer.getPageNumber() + ” of “;
- float textSize = helv.getWidthPoint(text, 9);
- float textBase = document.bottom();
- cb.beginText();
- cb.setFontAndSize(helv, 9);
- // for odd pagenumbers, show t
- cb.setTextMatrix(document.left(), textBase);
- cb.showText(text);
- cb.endText();
- cb.addTemplate(tpl, document.left() + textSize, textBase);
- cb.saveState();
- }
- @Override
- public void onOpenDocument(PdfWriter writer, com.lowagie.text.Document arg1) {
- // TODO Auto-generated method stub
- System.out.println(“OOD”);
- try{
- // initialization of the template
- tpl = writer.getDirectContent().createTemplate(100, 100);
- // tpl.setBoundingBox(new Rectangle(0, 0, 10, 10));
- // initialization of the font
- helv = BaseFont.createFont(“Helvetica”, BaseFont.WINANSI, false);
- }catch(Exception e)
- {
- }
- }
- }
转载自 http://nakupanda.iteye.com/blog/
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/220680.html原文链接:https://javaforall.net
