Hello,
I have couple of issues with tables containing HTML Lists (OL/UL) that span more than one page:
- Header of the first column is missing (Coll1) - All contents of the first column are missing
- Table-Cells overwrite footers (and sometimes lack content)
See resultant PDF "PureTabelrowBreak.pdf" and "PureTabelRowBreak_Work.pdf" for the desired output as well as the following code:
Pdf pdf1 = new Pdf(); pdf1.TextInfo.FontName = "Trebuchet MS"; pdf1.TextInfo.FontSize = 10;pdf1.IsBookmarked = <span style="color: blue;">true</span>; <span style="color: rgb(43, 145, 175);">Section</span> sec1 = pdf1.Sections.Add(); <span style="color: rgb(43, 145, 175);">Table</span> attributetable = <span style="color: blue;">new</span> <span style="color: rgb(43, 145, 175);">Table</span>(); attributetable.IsFirstRowRepeated = <span style="color: blue;">true</span>; <span style="color: green;">//attributetable.IsBroken = false;</span> attributetable.IsRowBroken = <span style="color: blue;">false</span>; attributetable.Border = <span style="color: blue;">new</span> <span style="color: rgb(43, 145, 175);">BorderInfo</span>((<span style="color: blue;">int</span>)<span style="color: rgb(43, 145, 175);">BorderSide</span>.All, 0.1F); attributetable.DefaultCellBorder = <span style="color: blue;">new</span> <span style="color: rgb(43, 145, 175);">BorderInfo</span>((<span style="color: blue;">int</span>)<span style="color: rgb(43, 145, 175);">BorderSide</span>.All, 0.1F); <span style="color: rgb(43, 145, 175);">TextInfo</span> textFormat2 = pdf1.TextInfo.Clone() <span style="color: blue;">as</span> <span style="color: rgb(43, 145, 175);">TextInfo</span>; textFormat2.FontSize = 11; attributetable.DefaultCellTextInfo = textFormat2; attributetable.DefaultCellPadding.Top = 3; attributetable.DefaultCellPadding.Bottom = 3; attributetable.DefaultCellPadding.Left = 3; attributetable.DefaultCellPadding.Right = 3; <span style="color: rgb(43, 145, 175);">Row</span> headerrow = attributetable.Rows.Add(); headerrow.BackgroundColor = <span style="color: blue;">new</span> Aspose.Pdf.Generator.<span style="color: rgb(43, 145, 175);">Color</span>(210, 210, 210); <span style="color: rgb(43, 145, 175);">TextInfo</span> textformatheader = pdf1.TextInfo.Clone() <span style="color: blue;">as</span> <span style="color: rgb(43, 145, 175);">TextInfo</span>; textformatheader.FontSize = 12; textformatheader.IsTrueTypeFontBold = <span style="color: blue;">true</span>; headerrow.DefaultCellTextInfo = textformatheader; <span style="color: rgb(43, 145, 175);">Cell</span> numbercell = headerrow.Cells.Add(<span style="color: rgb(163, 21, 21);">"No."</span>); <span style="color: rgb(43, 145, 175);">List</span><<span style="color: blue;">string</span>> descriptionstrings = <span style="color: blue;">new</span> <span style="color: rgb(43, 145, 175);">List</span><<span style="color: blue;">string</span>>(); descriptionstrings.Add(<span style="color: rgb(163, 21, 21);">"Coll1"</span>); descriptionstrings.Add(<span style="color: rgb(163, 21, 21);">"Coll2"</span>); <span style="color: blue;">foreach</span> (<span style="color: blue;">string</span> headerstr <span style="color: blue;">in</span> descriptionstrings) { headerrow.Cells.Add(headerstr); } <span style="color: blue;">int</span> rowvar = 0; <span style="color: blue;">for</span> (<span style="color: blue;">int</span> i = 0; i < 50; i++) { <span style="color: rgb(43, 145, 175);">Row</span> row1 = attributetable.Rows.Add(); <span style="color: blue;">if</span> (rowvar % 2 != 0) { row1.BackgroundColor = <span style="color: blue;">new</span> Aspose.Pdf.Generator.<span style="color: rgb(43, 145, 175);">Color</span>(235, 235, 235); } rowvar++; row1.Cells.Add(rowvar.ToString()); row1.Cells.Add(<span style="color: rgb(163, 21, 21);">"Value Coll1"</span>); <span style="color: green;">//see Result in PureTabelrowBreak.pdf</span> <span style="color: rgb(43, 145, 175);">Text</span> desc = <span style="color: blue;">new</span> <span style="color: rgb(43, 145, 175);">Text</span>(<span style="color: rgb(163, 21, 21);">"<ul> <li>asd</li> <li>asd</li> <li>asd</li> <li>sad</li> <li>asda</li> <li>sda</li> <li>sdas</li> <li>dsad</li> <li>asd</li> <li>asd</li> <li>asd</li> <li>asd</li> <li>sad</li> <li>asd</li> <li>asd</li> <li>asd</li> <li>asda</li> <li>sda</li> <li>sd</li> <li>asd</li> <li>ada</li> <li>sd</li> <li>asd</li> <li>asd</li> <li>asd</li> <li>asd</li> <li>as</li> <li>dasdasdasda</li> <li>sd</li> <li>asd</li> <li>asd</li> <li>asdsdasdasdasdasda</li> <li>sda</li> <li>sda</li> <li>sdasd</li> <li>asdasdasdasdasd</li> </ul> <ol> <li>asd</li> <li>asd</li> <li>asd</li> <li>asd</li> <li>asd</li> <li>asd</li> <li>asd</li> <li>asd</li> <li>asd</li> <li>asd</li> <li>asd</li> <li>asd</li> <li>asd</li> <li>asda</li> <li>sdasdasdasd</li> <li>ads</li> <li>asd</li> <li>asda</li> <li>sdasd</li> <li>as</li> <li>das</li> <li>das</li> <li>das</li> <li>das</li> <li>das</li> <li>dsddasdasdsa</li> <li>das</li> <li>das</li> <li>das</li> <li>das</li> <li>das</li> <li>da</li> <li>sda</li> <li>sdas</li> <li>dsdasdasdasd</li> <li>asdasdasd</li> <li>a</li> <li>sda</li> <li>sda</li> <li>sd</li> </ol>"</span>); <span style="color: green;">//se Result in PureTabelRowBreak_Work.pdf</span> <span style="color: rgb(43, 145, 175);">Text</span> desc = <span style="color: blue;">new</span> <span style="color: rgb(43, 145, 175);">Text</span>(<span style="color: rgb(163, 21, 21);">"Value Coll1<BR/>second row"</span>); desc.IsHtmlTagSupported = <span style="color: blue;">true</span>; desc.Bookmarked = <span style="color: rgb(43, 145, 175);">BookmarkIncludeType</span>.NonIncluded; <span style="color: rgb(43, 145, 175);">Cell</span> rowCell = row1.Cells.Add(); rowCell.Paragraphs.Add(desc); <span style="color: green;">//row1.Cells.Add()</span> <span style="color: green;">//row1.Cells.Add("Value Coll1\nsecond row");</span> } attributetable.ColumnAdjustment = <span style="color: rgb(43, 145, 175);">ColumnAdjustmentType</span>.AutoFitToContent; sec1.Paragraphs.Add(attributetable); <span style="color: green;">// Save the resultant PDF document</span> pdf1.Save(<span style="color: rgb(163, 21, 21);">@"c:/temp/PureTabelRowBreak_Work.pdf"</span>);
Pdf pdf1 = new Pdf();
pdf1.TextInfo.FontName = “Trebuchet MS”;
pdf1.TextInfo.FontSize = 10;pdf1.IsBookmarked = <span style="color: blue;">true</span>; <span style="color: rgb(43, 145, 175);">Section</span> sec1 = pdf1.Sections.Add(); <span style="color: rgb(43, 145, 175);">Table</span> attributetable = <span style="color: blue;">new</span> <span style="color: rgb(43, 145, 175);">Table</span>(); attributetable.IsFirstRowRepeated = <span style="color: blue;">true</span>; <span style="color: green;">//attributetable.IsBroken = false;</span> attributetable.IsRowBroken = <span style="color: blue;">false</span>; attributetable.Border = <span style="color: blue;">new</span> <span style="color: rgb(43, 145, 175);">BorderInfo</span>((<span style="color: blue;">int</span>)<span style="color: rgb(43, 145, 175);">BorderSide</span>.All, 0.1F); attributetable.DefaultCellBorder = <span style="color: blue;">new</span> <span style="color: rgb(43, 145, 175);">BorderInfo</span>((<span style="color: blue;">int</span>)<span style="color: rgb(43, 145, 175);">BorderSide</span>.All, 0.1F); <span style="color: rgb(43, 145, 175);">TextInfo</span> textFormat2 = pdf1.TextInfo.Clone() <span style="color: blue;">as</span> <span style="color: rgb(43, 145, 175);">TextInfo</span>; textFormat2.FontSize = 11; attributetable.DefaultCellTextInfo = textFormat2; attributetable.DefaultCellPadding.Top = 3; attributetable.DefaultCellPadding.Bottom = 3; attributetable.DefaultCellPadding.Left = 3; attributetable.DefaultCellPadding.Right = 3; <span style="color: rgb(43, 145, 175);">Row</span> headerrow = attributetable.Rows.Add(); headerrow.BackgroundColor = <span style="color: blue;">new</span> Aspose.Pdf.Generator.<span style="color: rgb(43, 145, 175);">Color</span>(210, 210, 210); <span style="color: rgb(43, 145, 175);">TextInfo</span> textformatheader = pdf1.TextInfo.Clone() <span style="color: blue;">as</span> <span style="color: rgb(43, 145, 175);">TextInfo</span>; textformatheader.FontSize = 12; textformatheader.IsTrueTypeFontBold = <span style="color: blue;">true</span>; headerrow.DefaultCellTextInfo = textformatheader; <span style="color: rgb(43, 145, 175);">Cell</span> numbercell = headerrow.Cells.Add(<span style="color: rgb(163, 21, 21);">"No."</span>); <span style="color: rgb(43, 145, 175);">List</span><<span style="color: blue;">string</span>> descriptionstrings = <span style="color: blue;">new</span> <span style="color: rgb(43, 145, 175);">List</span><<span style="color: blue;">string</span>>(); descriptionstrings.Add(<span style="color: rgb(163, 21, 21);">"Coll1"</span>); descriptionstrings.Add(<span style="color: rgb(163, 21, 21);">"Coll2"</span>); <span style="color: blue;">foreach</span> (<span style="color: blue;">string</span> headerstr <span style="color: blue;">in</span> descriptionstrings) { headerrow.Cells.Add(headerstr); } <span style="color: blue;">int</span> rowvar = 0; <span style="color: blue;">for</span> (<span style="color: blue;">int</span> i = 0; i < 50; i++) { <span style="color: rgb(43, 145, 175);">Row</span> row1 = attributetable.Rows.Add(); <span style="color: blue;">if</span> (rowvar % 2 != 0) { row1.BackgroundColor = <span style="color: blue;">new</span> Aspose.Pdf.Generator.<span style="color: rgb(43, 145, 175);">Color</span>(235, 235, 235); } rowvar++; row1.Cells.Add(rowvar.ToString()); row1.Cells.Add(<span style="color: rgb(163, 21, 21);">"Value Coll1"</span>); <span style="color: green;">//see Result in PureTabelrowBreak.pdf</span> <span style="color: rgb(43, 145, 175);">Text</span> desc = <span style="color: blue;">new</span> <span style="color: rgb(43, 145, 175);">Text</span>(<span style="color: rgb(163, 21, 21);">"<ul> <li>asd</li> <li>asd</li> <li>asd</li> <li>sad</li> <li>asda</li> <li>sda</li> <li>sdas</li> <li>dsad</li> <li>asd</li> <li>asd</li> <li>asd</li> <li>asd</li> <li>sad</li> <li>asd</li> <li>asd</li> <li>asd</li> <li>asda</li> <li>sda</li> <li>sd</li> <li>asd</li> <li>ada</li> <li>sd</li> <li>asd</li> <li>asd</li> <li>asd</li> <li>asd</li> <li>as</li> <li>dasdasdasda</li> <li>sd</li> <li>asd</li> <li>asd</li> <li>asdsdasdasdasdasda</li> <li>sda</li> <li>sda</li> <li>sdasd</li> <li>asdasdasdasdasd</li> </ul> <ol> <li>asd</li> <li>asd</li> <li>asd</li> <li>asd</li> <li>asd</li> <li>asd</li> <li>asd</li> <li>asd</li> <li>asd</li> <li>asd</li> <li>asd</li> <li>asd</li> <li>asd</li> <li>asda</li> <li>sdasdasdasd</li> <li>ads</li> <li>asd</li> <li>asda</li> <li>sdasd</li> <li>as</li> <li>das</li> <li>das</li> <li>das</li> <li>das</li> <li>das</li> <li>dsddasdasdsa</li> <li>das</li> <li>das</li> <li>das</li> <li>das</li> <li>das</li> <li>da</li> <li>sda</li> <li>sdas</li> <li>dsdasdasdasd</li> <li>asdasdasd</li> <li>a</li> <li>sda</li> <li>sda</li> <li>sd</li> </ol>"</span>); <span style="color: green;">//se Result in PureTabelRowBreak_Work.pdf</span> <span style="color: rgb(43, 145, 175);">Text</span> desc = <span style="color: blue;">new</span> <span style="color: rgb(43, 145, 175);">Text</span>(<span style="color: rgb(163, 21, 21);">"Value Coll1<BR/>second row"</span>); desc.IsHtmlTagSupported = <span style="color: blue;">true</span>; desc.Bookmarked = <span style="color: rgb(43, 145, 175);">BookmarkIncludeType</span>.NonIncluded; <span style="color: rgb(43, 145, 175);">Cell</span> rowCell = row1.Cells.Add(); rowCell.Paragraphs.Add(desc); <span style="color: green;">//row1.Cells.Add()</span> <span style="color: green;">//row1.Cells.Add("Value Coll1\nsecond row");</span> } attributetable.ColumnAdjustment = <span style="color: rgb(43, 145, 175);">ColumnAdjustmentType</span>.AutoFitToContent; sec1.Paragraphs.Add(attributetable); <span style="color: green;">// Save the resultant PDF document</span> pdf1.Save(<span style="color: rgb(163, 21, 21);">@"c:/temp/PureTabelRowBreak_Work.pdf"</span>);
Regards Markusv<?xml:namespace prefix = o ns = “urn:schemas-microsoft-com:office:office” /><o:p></o:p>