2014-02-19 157 views
1

我試圖在iTextSharp(一種在頁面底部插入空格和放置文本的方式)中從Latex中找到類似\vfill的東西。這只是一頁,而不是頁腳。iTextSharp垂直頁面填充

我在網上搜索了iText in the Book,但沒有找到任何答案。

回答

1

好吧,經過很長時間,並嘗試了很多事情,我找到了一個解決方案。

有些事情我想,「工作」,但還不夠好:

首先,我計算我的段落的高度(通過在RAM中的新文檔中一個新的表寫它),然後我會添加新行,直到我的文本有足夠的空間。結果:不是一個好的方法,文本會被幾個點(文檔中的y位置,因爲換行符)關閉。

然後我試圖用ColumnText來做到這一點:太多的計算(因爲我的文檔是動態的),我不喜歡把它放在絕對位置。

所以我的解決辦法是使用PdfPTable:

  var t = new PdfPTable(1); 
      t.ExtendLastRow = true; 
      t.WidthPercentage = 100; 

      var c = new PdfPCell(); 
      c.VerticalAlignment = Element.ALIGN_BOTTOM; 
      c.DisableBorderSide(Rectangle.BOX); 

      var p = new Paragraph("This is a test. This is a test. This is a test. This is a test. This is a test. This is a test. This is a test. This is a test. This is a test."); 
      p.Alignment = Element.ALIGN_JUSTIFIED; 

      c.AddElement(p); 

      t.AddCell(c); 

      doc.Add(t); 

很簡單,但我失去了很多的時間在這。我希望這也能幫助其他人。