2017-10-16 18 views
0

我已經寫了一個Java程序來下載PDF文件,但是我只想在第一頁之後向該pdf文檔添加標題,我已經嘗試了一些代碼。如何在java中的第一頁之後使用itextpdf添加頁眉或頁腳?

class MyFooter extends PdfPageEventHelper { 

    Font ffont = new Font(Font.FontFamily.UNDEFINED, 10, Font.BOLD); 

    private void addHeader(PdfWriter writer,Document document){ 
     PdfContentByte cb = writer.getDirectContent(); 
     Phrase header = new Phrase("Customer Id : ", ffont); 
     ColumnText.showTextAligned(cb, Element.ALIGN_CENTER, 
       header, 
       (document.right() - document.left())/2 + 
       document.leftMargin(), 
       document.top() - 10, 0); 

    } 

    private void addFooter(PdfWriter writer,Document document){ 
     PdfContentByte cb = writer.getDirectContent(); 
      Phrase footer = new Phrase("Page "+writer.getPageNumber(), 
      ffont); 
      ColumnText.showTextAligned(cb, Element.ALIGN_CENTER, 
        footer, 
        (document.right() - document.left())/2 + 
        document.leftMargin(), 
        document.bottom() - 10, 0); 
     } 


    public void onEndPage(PdfWriter writer, Document document) { 
     try{ 
      addHeader(writer,document); 
      addFooter(writer,document); 
     }catch(Exception e){ 
      e.printStackTrace(); 
     } 

    } 
} 

頁腳功能是否工作正常,但我想報頭功能,只有在第1頁打印,所以我嘗試使用

if(writer.getPageNumber() > 1) 

但是,這個條件是不工作

回答

1

嘗試

if (document.getPageNumber() > 1) 

作者的頁碼是PDF的頁碼,將在那裏呃寫PDF。

相關問題