How can I get Page Breaks to Work for RTF, DOC, and WPD Delivered Documents

I am trying to insert a page break into a delivered document consistently, regardless of delivery output type. If I add a page break with the following code: It works when the output type is PDF, but when it is DOC, RTF, or WPD no page break occurs.

Answers

  • We looked at this briefly on Company Investigator and the FOP itself didn't support the page-break attribute in 1.0 for formats other than PDF. This was changed in 1.1 (I don't remember where we found this info but I'm sure some Google searching could help you out) but PRISM was still using the older version.
  • There is little information about support of page-break in the rendered output. I was able to find this information on RTF (from
    http://xmlgraphics.apache.org/fop/0.95/output.html#rtf ): RTF - Not supported/implemented: -- break-before/after (supported by the RTF library but not tied into the RTFHandler)
  • The only guaranteed way that I know of is to use fo:page-sequence. Cobalt Document generally only has once page-sequence per document (or document chunk), however there are pre-formatted documents that were so large that the FOP died when processing. The fix was to add page-sequences to break up the document. There are a few other id attribute checks to create a new page-sequence as well in xhtml2fo.xsl in core of Cobalt Document. A page-sequence can only be a child of the root element, so you will need to structure your XHTML accordingly. Meaning you won't be able to add a style to any tag and expect a new page sequence, you will need to properly close and open the HTML tags down to the root of what you are converting.
  • Also note that in Jan 2014 I may be working on a solution to create a page-sequence based on an CSS class in Cobalt Document. The idea is when the document writer sees a specific class, it will chunk the XHTML. Then when the FO generator is working, it will create a new page sequence on these chunks.