From 35bf2edd9e71cbda906110caba095608121c220f Mon Sep 17 00:00:00 2001 From: Yan Maniez Date: Wed, 26 Jun 2019 22:28:04 +0200 Subject: [PATCH] =?UTF-8?q?D=C3=A9but=20tables=20en=20pdf?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- AideDeJeu/AideDeJeu/Pdf/PdfService.cs | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/AideDeJeu/AideDeJeu/Pdf/PdfService.cs b/AideDeJeu/AideDeJeu/Pdf/PdfService.cs index f24d3c05..9a389551 100644 --- a/AideDeJeu/AideDeJeu/Pdf/PdfService.cs +++ b/AideDeJeu/AideDeJeu/Pdf/PdfService.cs @@ -369,7 +369,31 @@ namespace AideDeJeu.Pdf private Phrase Render(Markdig.Extensions.Tables.Table tableBlock) { - return null; + int maxColumns = 0; + foreach (Markdig.Extensions.Tables.TableRow row in tableBlock) + { + maxColumns = Math.Max(maxColumns, row.Count); + } + + var table = new PdfPTable(maxColumns); + foreach (Markdig.Extensions.Tables.TableRow row in tableBlock) + { + foreach (Markdig.Extensions.Tables.TableCell cell in row) + { + var phrase = new Phrase(); + foreach (var blockpar in cell) + { + var par = blockpar as Markdig.Syntax.ParagraphBlock; + var blockPhrase = CreateFormatted(par.Inline, ParagraphFont, 0, new iTextSharp.text.Color(0)); + phrase.Add(blockPhrase); + } + table.AddCell(phrase); + } + } + + var tablePhrase = new Phrase(); + tablePhrase.Add(table); + return tablePhrase; } private Phrase CreateFormatted(ContainerInline inlines, iTextSharp.text.Font fontFamily, int fontStyle, iTextSharp.text.Color fontColor)