iTextSharp的PDF中错误的段落顺序

时间:2010-10-02 10:00:03

标签: image pdf itextsharp

我正在尝试使用iTextSharp生成PDF 它将包含许多图像,每个图像前面都有一个标题。但是当我生成PDF时,元素的顺序不会被保留 - 多个标题被组合在一起等等。

我将标题和图片包装在一个段落中,如下所示:

' Create paragraph and heading
Dim paragraph As New iTextSharp.text.Paragraph()
Dim heading As New iTextSharp.text.Chunk("Image title" & vbNewLine, pdfHeadingFont)

' Create image from Chart
Dim image = GetPdfImage(Me.chtMain)
Dim width = iTextSharp.text.PageSize.A4.Width - pdfDocument.LeftMargin - pdfDocument.RightMargin
Dim height = iTextSharp.text.PageSize.A4.Height - pdfDocument.TopMargin - pdfDocument.BottomMargin
image.Alignment = image.ALIGN_CENTER Or image.TEXTWRAP
image.ScaleToFit(width, height)

' Add heading and image to paragraph
paragraph.Add(heading)
paragraph.Add(image)

' Add paragraph to document
pdfDocument.Add(paragraph)

为什么图像和标题没有放在PDF中?我可以用其他方式做这件事吗?

谢谢,

马丁

1 个答案:

答案 0 :(得分:1)

想出来,感谢this question

显然,设置PdfWriter.StrictImageSequence = true可以解决此问题 iTextSharp通过尝试在每个页面上尽可能多地填充段落来“优化”您的文档 - 无论顺序如何。

马丁