Details
-
New Feature
-
Status: Closed
-
Minor
-
Resolution: Invalid
-
0.6
-
None
-
None
-
Tested on Linux with JDK 1.4.2_01-b06.
Description
Inspired by Ross Gardler's reply to my forrest-dev post titled "Tables, FOP, and page orientation", here is a patch that allows the user to set the PDF page size and orientation in skinconf.xml. Warning: I'm not sure if the patch isn't too disruptive to existing installations -- please take a look.
Patch summary:
* Changes the skinconf.xml DTD and corresponding .rnc to allow an optional "pdf" element, containing an "page" element with attributes "size" and "orientation".
* Modifies src/core/context/skins/common/xslt/fo/document2fo.xsl to read these two attributes from skinconf.xml, and to determine page-height and page-width attributes on simple-page-master accordingly.
* Modifies src/core/context/sitemap.xmap to actually pass the "config-file" parameter to the FO/PDF pipeline, which it didn't do before. I'm not sure whether this actually constitutes a bug fix, or whether passing in the parameter was previously considered unnecessary -- but since document2fo.xsl does specify the parameter, I suspect it should be passed in.
Page sizes currently supported are ISO A0 - A5, US Legal & Letter, Executive, Folio, Ledger, and Tabloid. Supported page orientations are portrait and landscape. Default is US Letter portrait to match the current hardwired page setup.
I suppose the "pdf" element in skinconf.xml could (should) later be extended to allow for custom page margins etc.
Patch summary:
* Changes the skinconf.xml DTD and corresponding .rnc to allow an optional "pdf" element, containing an "page" element with attributes "size" and "orientation".
* Modifies src/core/context/skins/common/xslt/fo/document2fo.xsl to read these two attributes from skinconf.xml, and to determine page-height and page-width attributes on simple-page-master accordingly.
* Modifies src/core/context/sitemap.xmap to actually pass the "config-file" parameter to the FO/PDF pipeline, which it didn't do before. I'm not sure whether this actually constitutes a bug fix, or whether passing in the parameter was previously considered unnecessary -- but since document2fo.xsl does specify the parameter, I suspect it should be passed in.
Page sizes currently supported are ISO A0 - A5, US Legal & Letter, Executive, Folio, Ledger, and Tabloid. Supported page orientations are portrait and landscape. Default is US Letter portrait to match the current hardwired page setup.
I suppose the "pdf" element in skinconf.xml could (should) later be extended to allow for custom page margins etc.