2011-01-26 68 views
1

我是意大利人,我很抱歉我的英語。 我想使用itextSharp將一個txt文件轉換爲pdf文件。 這是我的代碼:ItextSharp適合文本到頁面

String l = file.ReadLine() + "\r\n"; 
while (l != null) 
{ 
    iTextSharp.text.Font contentFont = iTextSharp.text.FontFactory.GetFont("Arial", 8, iTextSharp.text.Font.NORMAL); 
    //Chunk line = new Chunk(l, contentFont); 
    Paragraph p2 = new Paragraph(l,contentFont); 
    oDoc.Add(p2); 
    oDoc.Add(Chunk.NEWLINE); 
    l = file.ReadLine(); 
} 
oDoc.Close(); 

的文本頁面是一個多頁的文件,所以我想重現相同的PDF文件。

當我閱讀我的txt文件中的「第2頁」時,我需要在pdf文件中創建一個新頁面。

我想將第2頁之前的所有文本放在一個pdf頁面中。

我該如何將所有的文本放在一個pdf頁面中?

感謝的這麼多,對不起我的英語

回答

0

好吧,如果你達到一個PDF頁面結束前一文本頁面的結尾,你可以叫oDoc.newPage()。替代方案並不那麼簡單。

唯一的方法就是在每一頁上創建一個文本字段,設置多行標誌。然後將字體大小設置爲零,字段將自動選擇字體大小,以調整字體的大小以適合可用空間(在一些合理限制內)。您可以使用ColumnText並致電go(true)。這將「模擬」佈局,讓您在實際將文本繪製到內容流之前對實際字體大小進行調整。