Uploaded image for project: 'Forrest'
  1. Forrest
  2. FOR-112

PDF page size and orientation in skinconf.xml



    • Type: New Feature
    • Status: Closed
    • Priority: Minor
    • Resolution: Invalid
    • Affects Version/s: 0.6
    • Fix Version/s: None
    • Component/s: Skins (general issues)
    • Labels:
    • Environment:
      Tested on Linux with JDK 1.4.2_01-b06.


      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.




            • Assignee:
              cheche Juan Jose Pablos
              f.g.haas Florian G. Haas
            • Votes:
              0 Vote for this issue
              0 Start watching this issue


              • Created: