是否可以在iTextSharp中的表格(PdfPTable)中有單元格間距?我無法看到任何可能的地方。我確實看到了一個使用iTextSharp.text.Table的建議,但在我的iTextSharp(5.2.1)版本中似乎沒有。iTextSharp表格單元格間距可能?
6
A
回答
1
Table類已從5.x開始從iText中刪除,以支持PdfPTable。
至於間距,你要找的是setPadding方法。
看一看的iText的API的更多信息:
http://api.itextpdf.com/itext/com/itextpdf/text/pdf/PdfPCell.html
(這對Java版本,但C#端口維護的方法的名稱)
13
如果你正在尋找對於真正的單元格間距,如HTML,則不是,PdfPTable
本身不支持。然而,PdfPCell
支持一個屬性,該屬性需要IPdfPCellEvent
的自定義實現,只要單元佈局發生,該屬性就會被調用。下面是一個簡單的實現,你可能想調整它以滿足你的需求。
public class CellSpacingEvent : IPdfPCellEvent {
private int cellSpacing;
public CellSpacingEvent(int cellSpacing) {
this.cellSpacing = cellSpacing;
}
void IPdfPCellEvent.CellLayout(PdfPCell cell, Rectangle position, PdfContentByte[] canvases) {
//Grab the line canvas for drawing lines on
PdfContentByte cb = canvases[PdfPTable.LINECANVAS];
//Create a new rectangle using our previously supplied spacing
cb.Rectangle(
position.Left + this.cellSpacing,
position.Bottom + this.cellSpacing,
(position.Right - this.cellSpacing) - (position.Left + this.cellSpacing),
(position.Top - this.cellSpacing) - (position.Bottom + this.cellSpacing)
);
//Set a color
cb.SetColorStroke(BaseColor.RED);
//Draw the rectangle
cb.Stroke();
}
}
要使用它:
//Create a two column table
PdfPTable table = new PdfPTable(2);
//Don't let the system draw the border, we'll do that
table.DefaultCell.Border = 0;
//Bind our custom event to the default cell
table.DefaultCell.CellEvent = new CellSpacingEvent(2);
//We're not changing actual layout so we're going to cheat and padd the cells a little
table.DefaultCell.Padding = 4;
//Add some cells
table.AddCell("Test");
table.AddCell("Test");
table.AddCell("Test");
table.AddCell("Test");
doc.Add(table);
-4
嘗試
PdfPTable table = new PdfPTable(2);
table.getDefaultCell().setBorder(0);
table.getDefaultCell().setPadding(8);
table.addCell("Employee ID");
table.addCell("");
table.addCell("Employee Name");
table.addCell("");
table.addCell("Department");
table.addCell("");
table.addCell("Place");
table.addCell("");
table.addCell("Contact Number");
table.addCell("");
document.add(table);
相關問題
- 1. 表格單元格間距
- 2. CSS表格單元格邊距,間距
- 3. 設置iTextSharp中圖像網格之間的邊距或單元格間距PdfPTable
- 4. Drupal單元格間距
- 5. 單元格間距問題
- 6. 使用CSS的表單元格間距
- 7. 文本間距表單元格
- 8. 在div表中的單元格間距
- 9. 表格單元格間距被空格分隔:nowrap
- 10. 在基本表格視圖單元格之間添加間距
- 11. GWT listgrid單元格之間的間距
- 12. CollectionView中單元格之間的間距
- 13. 表格間距
- 14. iTextSharp的變化表單元格數據
- 15. 在iOS上縮放時禁用表格單元格間距Safari
- 16. 使用CSS/HTML的單元格表格間距
- 17. 如何在表格中只水平設置單元格間距
- 18. 間距的表格單元格的CSS/JavaScript的/ JQuery的
- 19. 1px表格單元格之間的差距
- 20. 跨表格單元格間距的瀏覽器支持
- 21. CSS - 邊框只與表格中的單元格間距
- 22. 是否可以模擬表格單元格之間的間距,使得垂直和水平間距不同?
- 23. 表格單元格/表格/表格單元格。不能居中垂直中間元素
- 24. GWT DockLayoutPanel單元格之間的差距
- 25. CollectionView單元格中的間距
- 26. 單元格間距,插圖中的CollectionView
- 27. 只添加單元格間距
- 28. 動態更改單元格間距UICollectionView
- 29. 表格單元格之間的空格
- 30. 間距HTML表格
感謝您的但是這是用於添加細胞填充(在細胞內)。我需要的是單元格間距(單元格之間)。 – 2012-04-20 11:49:32