diff options
author | Jeremias Maerki <jeremias@apache.org> | 2007-03-02 17:30:16 +0000 |
---|---|---|
committer | Jeremias Maerki <jeremias@apache.org> | 2007-03-02 17:30:16 +0000 |
commit | 667bb1ccbce991aa1b2b6c25f8fcab0419b5fb42 (patch) | |
tree | 9887d51fc8d84066d3fe44f9aab023e7c3aeba48 /src/foschema | |
parent | 6a674b4f027dedbc5818b706cf7b85ea0007d42f (diff) | |
download | xmlgraphics-fop-667bb1ccbce991aa1b2b6c25f8fcab0419b5fb42.tar.gz xmlgraphics-fop-667bb1ccbce991aa1b2b6c25f8fcab0419b5fb42.zip |
Added support for an optional two-pass production for PostScript output to minimize file size. This adds images only once and adds only the fonts that are really used. The actual resource optimization is implemented with the use of the new DSC parser in XML Graphics Commons.
A simple test file with a few images and a few configured fonts of which most are not used shows, that with the two-pass approach the file size of the generated PostScript file decreased from 510KB to 160KB. Note that enabling this feature will increase the memory requirements in the PostScript interpreter when there are many images. Documentation follows.
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@513857 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'src/foschema')
-rw-r--r-- | src/foschema/fop-configuration.xsd | 29 |
1 files changed, 22 insertions, 7 deletions
diff --git a/src/foschema/fop-configuration.xsd b/src/foschema/fop-configuration.xsd index ad959f947..c4d9ac47f 100644 --- a/src/foschema/fop-configuration.xsd +++ b/src/foschema/fop-configuration.xsd @@ -116,18 +116,33 @@ <xsd:documentation>Configuration elements used by the PostScript renderer, MIME type application/postscript</xsd:documentation> </xsd:annotation> - <xsd:element name="auto-rotate-landscape"> + <xsd:element name="auto-rotate-landscape" type="xsd:boolean" default="false" minOccurs="0"> <xsd:annotation> - <xsd:documentation>auto-rotate-landscape is used by the PostScript renderer, - MIME type application/postscript.</xsd:documentation> + <xsd:documentation>When set to "true" a landscape page is automatically + rotated and specified as a landscape page in PostScript.</xsd:documentation> + </xsd:annotation> + </xsd:element> + <xsd:element name="language-level" default="3" minOccurs="0"> + <xsd:annotation> + <xsd:documentation>Specifies the PostScript language level to use when + generating PostScript code. + language-level is used by the PostScript renderer, + MIME type application/postscript.</xsd:documentation> </xsd:annotation> <xsd:simpleType> - <xsd:restriction base="xsd:string"> - <xsd:enumeration value="false"/> - <xsd:enumeration value="true"/> + <xsd:restriction base="xsd:positiveInteger"> + <xsd:enumeration value="2"/> + <xsd:enumeration value="3"/> </xsd:restriction> </xsd:simpleType> </xsd:element> + <xsd:element name="optimize-resources" type="xsd:boolean" default="false" minOccurs="0"> + <xsd:annotation> + <xsd:documentation>When set to "true" PostScript resources are optimized by making a + second pass over the PostScript file (rewriting it). Optimized means that no duplicate + images are written to the stream and only used fonts are added to the PostScript file.</xsd:documentation> + </xsd:annotation> + </xsd:element> </xsd:sequence> <xsd:sequence> <xsd:annotation> @@ -193,7 +208,7 @@ <xsd:sequence> <xsd:element name="font-triplet" type="fontTripletType" maxOccurs="unbounded"/> </xsd:sequence> - <xsd:attribute name="metrics-url" type="xsd:anyURI" use="required"/> + <xsd:attribute name="metrics-url" type="xsd:anyURI" use="optional"/> <xsd:attribute name="embed-url" type="xsd:anyURI" use="optional"/> <xsd:attribute name="kerning" use="optional" default="no"> <xsd:simpleType> |