本文整理匯總了C#中iTextSharp.text.pdf.PdfPTable.GetCellStartRowIndex方法的典型用法代碼示例。如果您正苦於以下問題:C# PdfPTable.GetCellStartRowIndex方法的具體用法?C# PdfPTable.GetCellStartRowIndex怎麽用?C# PdfPTable.GetCellStartRowIndex使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類iTextSharp.text.pdf.PdfPTable
的用法示例。
在下文中一共展示了PdfPTable.GetCellStartRowIndex方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。
示例1: SplitRowspans
// Contributed by Deutsche Bahn Systel GmbH (Thorsten Seitz), splitting row spans
/**
* Split rowspan of cells with rowspan on next page by inserting copies with the remaining rowspan
* and reducing the previous rowspan appropriately, i.e. if a cell with rowspan 7 gets split after 3 rows
* of that rowspan have been laid out, its column on the next page should start with an empty cell
* having the same attributes and rowspan 7 - 3 = 4.
*
* @since iText 5.4.3
*/
virtual public void SplitRowspans(PdfPTable original, int originalIdx, PdfPTable part, int partIdx) {
if(original == null || part == null) {
return;
}
int i = 0;
while(i < cells.Length) {
if(cells[i] == null) {
int splittedRowIdx = original.GetCellStartRowIndex(originalIdx, i);
int copyRowIdx = part.GetCellStartRowIndex(partIdx, i);
PdfPCell splitted = original.GetRow(splittedRowIdx)
.GetCells()[i]; // need this to reduce its rowspan
PdfPCell copy = part.GetRow(copyRowIdx)
.GetCells()[i]; // need this for (partially) consumed ColumnText
if(splitted != null) {
System.Diagnostics.Debug.Assert(copy != null); // both null or none
cells[i] = new PdfPCell(copy);
int rowspanOnPreviousPage = partIdx - copyRowIdx + 1;
cells[i].Rowspan = copy.Rowspan - rowspanOnPreviousPage;
splitted.Rowspan = rowspanOnPreviousPage;
this.calculated = false;
}
++i;
}
else {
i += cells[i].Colspan;
}
}
}