2
我在使用iTextSharp重疊表時遇到問題。iTextSharp絕對定位(GridView)
我有多個表格(來自gridviews),我想用iTextSharp寫入pdf。
我想每個表之間只有10px的間距(垂直方向),並且表的高度總是不同。
有沒有人有文章我可以閱讀,以幫助我與這種情況?或者有什麼建議?絕對定位不適合我。
我在使用iTextSharp重疊表時遇到問題。iTextSharp絕對定位(GridView)
我有多個表格(來自gridviews),我想用iTextSharp寫入pdf。
我想每個表之間只有10px的間距(垂直方向),並且表的高度總是不同。
有沒有人有文章我可以閱讀,以幫助我與這種情況?或者有什麼建議?絕對定位不適合我。
您可以將每個表格放在iTextSharp.text.Paragraph
中,並使用Paragraph
對象的SpacingAfter
屬性來創建您的空白。
像這種測試方法:
private static void DemoTableSpacing() {
using (FileStream fs = new FileStream("SpacingTest.pdf", FileMode.Create)) {
Document doc = new Document();
PdfWriter.GetInstance(doc, fs);
doc.Open();
Paragraph paragraphTable1 = new Paragraph();
paragraphTable1.SpacingAfter = 15f;
PdfPTable table = new PdfPTable(3);
PdfPCell cell = new PdfPCell(new Phrase("This is table 1"));
cell.Colspan = 3;
cell.HorizontalAlignment = 1;
table.AddCell(cell);
table.AddCell("Col 1 Row 1");
table.AddCell("Col 2 Row 1");
table.AddCell("Col 3 Row 1");
//table.AddCell("Col 1 Row 2");
//table.AddCell("Col 2 Row 2");
//table.AddCell("Col 3 Row 2");
paragraphTable1.Add(table);
doc.Add(paragraphTable1);
Paragraph paragraphTable2 = new Paragraph();
paragraphTable2.SpacingAfter = 10f;
table = new PdfPTable(3);
cell = new PdfPCell(new Phrase("This is table 2"));
cell.Colspan = 3;
cell.HorizontalAlignment = 1;
table.AddCell(cell);
table.AddCell("Col 1 Row 1");
table.AddCell("Col 2 Row 1");
table.AddCell("Col 3 Row 1");
table.AddCell("Col 1 Row 2");
table.AddCell("Col 2 Row 2");
table.AddCell("Col 3 Row 2");
paragraphTable2.Add(table);
doc.Add(paragraphTable2);
doc.Close();
}
}
這應該告訴你可以做什麼。嘗試添加和刪除第一個表中的行;你會看到兩個表格之間的空間總是在那裏,並沒有改變。
廢話,非常感謝你!大聲笑。 – Kukoy 2010-09-30 16:07:36