Folks,I've been working on improving our ability to generate PDF's from Quickbook/Docbook source using a "torture-test" consisting of a subset of the Math lib docs. I have some questions/feedback required, but first some observations:
FO Generators: ~~~~~~~~~~~~~~ I've tried three FO processors:Apache FOP-0.23: lot's of flow control issues, and SVG rendering problems. Don't use unless you have to.
Apache FOP-0.93 (latest stable release): Some flow control issues, but hugely improved compared to 0.23. Doesn't render symbol characters (Greek characters for example) correctly without manually editing the FO output.
XEP from RenderX (www.renderx.com): Everything I've tried just plain works first time. It's command line compatible with FOP so it fit's into Boost.Build with just a trivial change to your user_config.jam. Only downside is that it's a commercial product and the free personal edition puts a small logo at the bottom of each page.
Test outputs from each can be found in the vault: http://boost-consulting.com/vault/index.php?&direction=0&order=&directory=PDF%20Test
Improving Our Stylesheets ~~~~~~~~~~~~~~~~~~~~~~~~~ I've made some changes (not committed yet) to our fo.xsl stylesheet to: * Syntax highlight C++ code. * Put a box around code blocks and admonishments. * Improve the appearance of tables.* Added some keep-together instructions to improve flow-control around tables/code/admonishments.
I've tried to mimic our HTML stylesheets as far possible, and the effects can be seen in the test PDF's.
The Questions: ~~~~~~~~~~~~~~1) How do folks feel about the look and feel of these: are these heading in the right direction? 2) Do we want a consistent look/feel across all Boost-PDF's? If yes, is it OK to commit the stylesheet changes (diff's attached)? 3) Many of the page layout options (margins etc) I'm using are expressed as xsl-params in my Jamfile, should these be in the fo.xsl as well? Currently I have:
# PDF Options: # TOC Generation: this is needed for FOP-0.9 and later: # <xsl:param>fop1.extensions=1 # TOC for XEP only: <xsl:param>xep.extensions=1# TOC generation: this is needed for FOP 0.2, but must not be set to zero for FOP-0.9 or XEP!
<xsl:param>fop.extensions=0 # No indent on body text: <xsl:param>body.start.indent=0pt # Margin size: <xsl:param>page.margin.inner=0.5in # Margin size: <xsl:param>page.margin.outer=0.5in # Yes, we want graphics for admonishments: <xsl:param>admon.graphics=1 # Set this one for PDF generation *only*: # default pnd graphics are awful in PDF form, # better use SVG's instead: <xsl:param>admon.graphics.extension=".svg"4) Do we have a consistent location for PDF downloads: if not should we have?
Outstanding Issues: ~~~~~~~~~~~~~~~~~~~The biggest one is that PDF generation is a lot harder than it should be with bjam: if we could get FO's and PDF's placed in a "pdf" subdirectory that would help enormously - currently they get generated in a directory of bjam's choosing under bin.v2 which results in all links to images breaking :-( FO generation also fails if the FO file already exists. So basically I need a Boost.Build expert to help with these: or at least explain how the existing rules work!
Anyway, thanks in advance for any feedback you may have, John.
bb.diff
Description: Binary data
------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/
_______________________________________________ Boost-docs mailing list [email protected] Unsubscribe and other administrative requests: https://lists.sourceforge.net/lists/listinfo/boost-docs
