Неправильный порядок абзацев в PDF от iTextSharp - PullRequest
0 голосов
/ 02 октября 2010

Я пытаюсь создать PDF, используя iTextSharp.
Он будет состоять из нескольких изображений, каждое с заголовком перед ним. Но когда я генерирую 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? Могу ли я сделать это каким-то другим способом?

Спасибо,

Martin

1 Ответ

1 голос
/ 02 октября 2010

Разобрался, благодаря этому вопросу .

Очевидно, что установка PdfWriter.StrictImageSequence = true решает эту проблему.
iTextSharp «оптимизирует» ваш документ, стараясь разместить как можно больше абзацев на каждой странице - независимо от порядка.

Martin

...