static void PdfWithTable() { // Table PdfTable table = new PdfTable( style: TableStyle.OnlyRowsBordered, fitToDocument: true); // THead table.THead.Add(new PdfTableHeaderCell("Nummer", Alignment.Left, 2.0)); table.THead.Add(new PdfTableHeaderCell("Name", Alignment.Left, 4.0)); table.THead.Add(new PdfTableHeaderCell("Position", Alignment.Left, 2.0)); table.THead.Add(new PdfTableHeaderCell("GP", Alignment.Center, 2.0)); table.THead.Add(new PdfTableHeaderCell("G", Alignment.Center, 2.0)); table.THead.Add(new PdfTableHeaderCell("A", Alignment.Center, 2.0)); table.THead.Add(new PdfTableHeaderCell("PTS", Alignment.Center, 2.0)); table.THead.Add(new PdfTableHeaderCell("PIM", Alignment.Center, 2.0)); // TBody PdfTableRow row = new PdfTableRow(); row.Add(new PdfTableCell("1")); row.Add(new PdfTableCell("Aebischer David")); row.Add(new PdfTableCell("Goalkeeper")); row.Add(new PdfTableCell("65")); row.Add(new PdfTableCell("0")); row.Add(new PdfTableCell("0")); row.Add(new PdfTableCell("0")); row.Add(new PdfTableCell("14")); table.TBody.Add(row); row = new PdfTableRow(); row.Add(new PdfTableCell("1")); row.Add(new PdfTableCell("Aeschlimann Jean-Jaques")); row.Add(new PdfTableCell("Forwarder")); row.Add(new PdfTableCell("120")); row.Add(new PdfTableCell("20")); row.Add(new PdfTableCell("15")); row.Add(new PdfTableCell("35")); row.Add(new PdfTableCell("24")); table.TBody.Add(row); IPdfTemplate template = new PdfTemplateWithHeaderAndHeading(); template.Define( title: "U20 Junior National Team 2 2 2 2 2 2 2 2 2 2", author: "Doc Author", subject: "PLAYER STATISTICS - Season 2014 / 2015", keywords: "Doc Keywords", absolutePathToPdfTemplate: @"D:\DEVELOPMENT\GIT\OPTEN Solutions\tools\Pdf\pdf_template.pdf"); template.Elements.Add(table); // Create template.SaveOnDisk(@"C:\Users\cfrei\Desktop\" + template.FileName()); }
/// <summary> /// Renders the specified PDF styling. /// </summary> /// <param name="pdfStyling">The PDF styling.</param> /// <param name="section">The section.</param> public void Render(IPdfStyling pdfStyling, Section section) { PdfTable table = new PdfTable( style: TableStyle.NoSpacing, fitToDocument: true); // Title rows foreach (string title in _titles) { table.THead.Add(new PdfTableHeaderCell(title.Trim(), true, Alignment.Left)); } // Get the max count int maxCount = _addresses.Max(o => o.Count()); PdfTableRow row; string line; bool isBold; for (int i = 0; i < maxCount; i++) { row = new PdfTableRow(); foreach (IEnumerable <TextLine> addressLine in _addresses) { line = i >= addressLine.Count() ? string.Empty : addressLine.ElementAt(i).Text; isBold = i >= addressLine.Count() ? false : addressLine.ElementAt(i).IsBold; row.Add(new PdfTableCell(text: line, isBold: isBold)); } table.TBody.Add(row); } table.Render(pdfStyling: pdfStyling, section: section); }