diff options
author | Jeremias Maerki <jeremias@apache.org> | 2007-05-28 14:31:24 +0000 |
---|---|---|
committer | Jeremias Maerki <jeremias@apache.org> | 2007-05-28 14:31:24 +0000 |
commit | 8c1aba3f976127d33ec50b67d760f56364c08487 (patch) | |
tree | adfdca730f41c1b9029324bf53535aa25bf16d27 /src/java/org/apache/fop/render/pdf/PDFRenderer.java | |
parent | 7ada0a06fe2b9ce0e1867d2c9c47f71ea47a43b2 (diff) | |
download | xmlgraphics-fop-8c1aba3f976127d33ec50b67d760f56364c08487.tar.gz xmlgraphics-fop-8c1aba3f976127d33ec50b67d760f56364c08487.zip |
Bugzilla #41831:
- Add support font auto-detection (easier font configuration) including a font cache to speed up the auto-detection process.
- Refactoring of the configuration code: All Avalon configuration stuff is extracted into separate "Configurator" classes.
- Refactoring of the FOURIResolver.
Submitted by: Adrian Cumiskey <fop-dev.at.cumiskey.com>
Changes to the patch by jeremias during the review:
- Font cache simplified (Java object serialization instead of XML), functionality fixed and moved to the fonts.package.
- Relocated default cache file location to user directory.
- Fixed the font configuration for PDFDocumentGraphics2D/PDFTranscoder that got lost with the patch.
- Fixed a problem with having a non-file URL as font base URL.
- Simplified RendererContextInfo stuff to make it easier to understand.
- Fixed handling of Type 1 fonts in auto-detection.
- Reduced verbosity of font-related log output.
- Updated Jakarta Commons IO to version 1.3.1 (the patch depends on it)
- Various javadocs improvements
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@542237 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'src/java/org/apache/fop/render/pdf/PDFRenderer.java')
-rw-r--r-- | src/java/org/apache/fop/render/pdf/PDFRenderer.java | 52 |
1 files changed, 16 insertions, 36 deletions
diff --git a/src/java/org/apache/fop/render/pdf/PDFRenderer.java b/src/java/org/apache/fop/render/pdf/PDFRenderer.java index 7d584c036..73c38878e 100644 --- a/src/java/org/apache/fop/render/pdf/PDFRenderer.java +++ b/src/java/org/apache/fop/render/pdf/PDFRenderer.java @@ -41,8 +41,6 @@ import javax.xml.transform.stream.StreamSource; import org.w3c.dom.Document; // Avalon -import org.apache.avalon.framework.configuration.Configuration; -import org.apache.avalon.framework.configuration.ConfigurationException; import org.apache.commons.io.IOUtils; // FOP @@ -69,7 +67,6 @@ import org.apache.fop.area.inline.WordArea; import org.apache.fop.area.inline.SpaceArea; import org.apache.fop.fonts.Typeface; import org.apache.fop.fonts.Font; -import org.apache.fop.fonts.FontSetup; import org.apache.fop.image.FopImage; import org.apache.fop.image.ImageFactory; import org.apache.fop.image.XMLImage; @@ -86,7 +83,6 @@ import org.apache.fop.pdf.PDFFilterList; import org.apache.fop.pdf.PDFGoTo; import org.apache.fop.pdf.PDFICCBasedColorSpace; import org.apache.fop.pdf.PDFICCStream; -import org.apache.fop.pdf.PDFGoTo; import org.apache.fop.pdf.PDFInfo; import org.apache.fop.pdf.PDFLink; import org.apache.fop.pdf.PDFMetadata; @@ -266,38 +262,6 @@ public class PDFRenderer extends AbstractPathOrientedRenderer { public PDFRenderer() { } - /** - * Configure the PDF renderer. - * Get the configuration to be used for pdf stream filters, - * fonts etc. - * @see org.apache.avalon.framework.configuration.Configurable#configure(Configuration) - */ - public void configure(Configuration cfg) throws ConfigurationException { - //PDF filters - this.filterMap = PDFFilterList.buildFilterMapFromConfiguration(cfg); - - //Font configuration - List cfgFonts = FontSetup.buildFontListFromConfiguration(cfg, this); - if (this.fontList == null) { - this.fontList = cfgFonts; - } else { - this.fontList.addAll(cfgFonts); - } - - String s = cfg.getChild(PDF_A_MODE, true).getValue(null); - if (s != null) { - this.pdfAMode = PDFAMode.valueOf(s); - } - s = cfg.getChild(PDF_X_MODE, true).getValue(null); - if (s != null) { - this.pdfXMode = PDFXMode.valueOf(s); - } - s = cfg.getChild(KEY_OUTPUT_PROFILE, true).getValue(null); - if (s != null) { - this.outputProfileURI = s; - } - } - private boolean booleanValueOf(Object obj) { if (obj instanceof Boolean) { return ((Boolean)obj).booleanValue(); @@ -1891,5 +1855,21 @@ public class PDFRenderer extends AbstractPathOrientedRenderer { public String getMimeType() { return MIME_TYPE; } + + public void setAMode(PDFAMode mode) { + this.pdfAMode = mode; + } + + public void setXMode(PDFXMode mode) { + this.pdfXMode = mode; + } + + public void setOutputProfileURI(String outputProfileURI) { + this.outputProfileURI = outputProfileURI; + } + + public void setFilterMap(Map filterMap) { + this.filterMap = filterMap; + } } |