Merged Temp_API_Finalization branch back into FOP Trunk:
Finalized API according to the plan in the Wiki: http://wiki.apache.org/xmlgraphics-fop/ApiDesign
In addition to that:
Deprecated the rest of the Fop constructors.
Refactored the FopServlet a bit to make it more versatile and still easy to understand. The FopPrintServlet is now a subclass of FopServlet.
Some further cleanup on the way.
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@389086 13f79535-47bb-0310-9956-ffa450edef68
No stacktrace when encountering problems while building a base URL. It's not necessary and draws too much attention. Instead added the URL to the log message that causes the problem.
Don't validate Base URLs anymore in FOUserAgent because that produces errors (because an URL cannot be built) if a symbolic URI is used which is later resolved through a URIResolver.
Improved support for relative URLs for accessing font resources.
ServletContextURIResolver can now use a base URI that starts with "servlet-context:".
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@388766 13f79535-47bb-0310-9956-ffa450edef68
The about attribute must have the "rdf" namespace prefix.
Adobe Acrobat uses an outdated namespace URI for the PDF/A identification, so do the same as Adobe Distiller: write the PDF/A identification twice, once with each namespace URI. Reason: Acrobat is probably the best tool to verify PDF/A conformance right now. jHove covers only part of ISO 19005-1.
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@388126 13f79535-47bb-0310-9956-ffa450edef68
Made the loading of user-specified hyphenation patterns usable again and plugged it into URI resolution.
Backwards-compatibility should be maintained.
PatternParser now uses JAXP to get the SAX parser.
Moved the hyphenation pattern cache into a separate class so I can easily plug it into FopFactory later instead of having static variables.
Added serialVersionUID to HyphenationTree. Necessary because the class signature changed.
FOURIResolver does not complain about "file not found" on the log anymore since this should be done by the caller. Until now, this resulted in two log messages about the same problem on the log. "File not found" is still reported but only on level "debug" which might be helpful when tracking down a problem, but at least it's not a "WARNING" anymore.
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@387477 13f79535-47bb-0310-9956-ffa450edef68
block-container did not tell the breaker if it's in auto-height mode. That causes false alarms for block-containers which are not constrained in b-p-d.
Certain filter combinations in PDF could lead to invalid PDFs. DecodeParams were not properly handled.
Default filter for XMP metadata set to NullFilter as XMP metadata should always be embedded as clear-text so non-PDF-aware XMP processors can extract the metadata.
Default filter for DCT/JPEG- and CCITT/TIFF-encoded images set to NullFilter because these two compression methods already do a good job. An additional flate filter (as was applied before due to the single default) helps a just little but also adds processing time. If anyone wants to squeeze every possible bit out of the PDF you can use the following in the user configuration:
<filterList type="tiff">
<value>flate</value>
</filterList>
<filterList type="jpeg">
<value>flate</value>
</filterList>
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@387213 13f79535-47bb-0310-9956-ffa450edef68
Output filenames with a space resulted in "%20" in the generated file. Looks like a bug in Xalan-J.
We now open the OutputStream ourselves. The two practically identical write methods pulled up into the abstract base class.
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@387161 13f79535-47bb-0310-9956-ffa450edef68
More accurate font size selection.
Outer transformation matrix is no longer ignored when painting text.
Improvement for transparent bitmaps (effect can be seen on filters-composite-01-b and render-groups-03-t in SVG 1.1 test suite)
Submitted by: Michal Sevcenko <sevcenko.at.vc.cvut.cz>
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@386954 13f79535-47bb-0310-9956-ffa450edef68
Avoid exception when ImageIO is used as image adapter for TIFF images. The stream is already closed and the bitmap loaded when FopPDFImages wants to write the image to the PDF.
Bugfix: CCITT Group 4 encoded TIFF images were not properly embedded in PDF files. FopPDFImage always used the bits/pixel and color space of the original image although our image adapter mostly convert all images to 24bit RGB. One day, we will need to improve the image handling.
Note: letter-spacing is still implemented as before. Fixing this cannot be done without looking at space resolution as a whole on inline level.
The Character area tree object is now deprecated. Normal Text objects should be used to keep renderers simpler.
Introduced FontResolver interface to remove the dependency of FOUserAgent into the font package.
Added kerning information to the base14 fonts, Helvetica and Times. By default it is not used to keep the status-quo. Enable base14 kerning through the FOUserAgent (FopFactory after the API finalization).
Restored the production of EPS images in PDF output as PostScript XObjects.
Restored functionality for a more compact format for the area tree renderer to save space.
LayoutEngineTester slightly changed to allow for configuration values from the XML file. For now, only enabling base14 kerning is supported.
Removed duplicate offset variable in SpaceArea.
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@386327 13f79535-47bb-0310-9956-ffa450edef68
Register FOEventHandlers using Service discovery, too.
Removed superfluous discovery and registration methods.
Renamed META-INF file to match the pattern established in the sandbox.
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@383491 13f79535-47bb-0310-9956-ffa450edef68
Add dynamic lookup of the RendererMakers to RendererFactory (as suggested by Nils Meier; proposed patch slightly altered to make use of org.apache.fop.util.Service instead of sun.misc.Service)
Disabled the resolution setting because it can lead to ugly side-effects. Resolution is poort now (72dpi) but at least the SVG gets rendered correctly.