diff --git a/TSDocxToPdf.tsf b/TSDocxToPdf.tsf index 3050faa..8dfb67c 100644 --- a/TSDocxToPdf.tsf +++ b/TSDocxToPdf.tsf @@ -23,8 +23,9 @@ private function AllocateElementsToSectWare(); function ResetCoordinates(sect_ware: TSSectWare); - function TransformParagraph(sect_ware: TSSectWare; paragraph: P); - function TransformTable(sect_ware: TSSectWare; table: Tbl); + function TransformP(sect_ware: TSSectWare; paragraph: P); + function TransformTbl(sect_ware: TSSectWare; table: Tbl); + function TransformSdt(sect_ware: TSSectWare; sdt: Sdt); function PrintGrid(page: PdfPage; sect_ware: TSSectWare); // test @@ -74,7 +75,7 @@ begin self.AddPage(sect_ware); prev := sect_ware; end - elements := sect_ware.Elements(); + elements := sect_ware.Elements; for _,element in elements do begin if element.LocalName = "p" then self.TransformParagraph(sect_ware, element); @@ -154,7 +155,7 @@ begin for i:=0 to length(elements)-1 do begin element := elements[i]; - ware.Elements[length(ware.Elements)] := element; + ware.AddElement(element); if element.LocalName = "p" and ifObj(element.PPr.SectPr.XmlNode) then begin ##fp(ware, element.PPr.SectPr); @@ -238,7 +239,7 @@ begin page.Stroke(); end; -function TSDocxToPdf.TransformParagraph(sect_ware: TSSectWare; paragraph: P); +function TSDocxToPdf.TransformP(sect_ware: TSSectWare; paragraph: P); begin w := sect_ware.SectPr.PgSz.W - sect_ware.SectPr.PgMar.Right - sect_ware.SectPr.PgMar.Left; range := new TSPdfParagraphRange(self, current_page_, docx_components_, sect_ware, paragraph); @@ -250,7 +251,7 @@ begin point_.Y := range.EndY; end; -function TSDocxToPdf.TransformTable(sect_ware: TSSectWare; table: Tbl); +function TSDocxToPdf.TransformTbl(sect_ware: TSSectWare; table: Tbl); begin w := sect_ware.SectPr.PgSz.W - sect_ware.SectPr.PgMar.Right - sect_ware.SectPr.PgMar.Left; range := new TSPdfTableRange(self, current_page_, docx_components_, sect_ware, table); @@ -262,3 +263,7 @@ begin point_.Y := range.EndY; end; +function TSDocxToPdf.TransformSdt(sect_ware: TSSectWare; sdt: Sdt); +begin + w := sect_ware.SectPr.PgSz.W - sect_ware.SectPr.PgMar.Right - sect_ware.SectPr.PgMar.Left; +end;