Conclusion
XSL:FO is a great way to create PDF files from XML, but very large PDF files present memory issues. The cause is frequently the use of a single fo:page-sequence to contain the entire body of a book. Chunking the book into multiple fo:page-sequences can prevent these memory problems. The XSL:FO needs to generate page sequences with each child element parallel to the parent’s page sequences—not embedded in them.
This approach is especially useful for DITA because it embeds the same XML element (“topic”) at many levels. The strategy outlined in this document has the flexibility to chunk topics down to a specified level. Using this approach, forced page breaks are kept to a minimum while fo:page-sequence sections are adjusted for the memory limitations of the FO processor.
Next Page:
About the author
