asciidoctor / asciidoctor-pdf

:page_with_curl: Asciidoctor PDF: A native PDF converter for AsciiDoc based on Asciidoctor and Prawn, written entirely in Ruby.
https://docs.asciidoctor.org/pdf-converter/latest/
MIT License
1.14k stars 500 forks source link

Table cell longer than one page loses text #1199

Closed BrianEmberling closed 2 years ago

BrianEmberling commented 5 years ago

Rendering a 3-column table (in this case) where the contents of one cell is longer than a page causes the rest of the data in in that table cell to be discarded (does not extend to the second page).

This test case uses asciidoctor-pdf-1.5.0.beta.2, with no custom theme/styles. % asciidoctor-pdf test.adoc -o test.pdf

The table entry "opcode 63" extends beyond the page. In the source code there is text which does not appear in the output: "This is some more text that should appear but does not".

zip file has 2 files: input (test.adoc), output (test.pdf)

test.zip

mojavelinux commented 5 years ago

Ugh. This seems to be a side effect of the fix for #1170. It's been like playing a game of whack-a-mole to get this feature stable. :man_facepalming:

mojavelinux commented 5 years ago

Actually, it looks like this issue has been around since the dawn of Asciidoctor PDF. It's a bug in prawn-table. I'll see what I can do to work around it, if possible.

mojavelinux commented 5 years ago

It looks like this is a known issue in prawn-table and very complicated to fix. See https://github.com/prawnpdf/prawn-table/issues/41. I don't really know there's much we can do in Asciidoctor PDF about it. Perhaps we can issue a warning.

mojavelinux commented 5 years ago

Perhaps we can issue a warning.

I don't even know how we can do that. prawn-table is the one responsible for laying out and rendering tables. The problem simply has to be fixed there first.

graphitefriction commented 2 years ago

Asciidoctor PDF now issues a warning when this happens (#1626). It's also documented as a known limitation (https://docs.asciidoctor.org/pdf-converter/latest/features/#limitations).