Fixes unrecoverable exceptions causing BatchDiffer to fail.
Doing a clean separation of encoded and decoded data inside the image implementations. Helps fix a problem with the encoded CCITT TIFF being sent to the PS output even though this is not yet implemented.
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@239661 13f79535-47bb-0310-9956-ffa450edef68
Started to implement a resource tracking facility in the PSGenerator. It tracks resources such as EPS files, procset etc. as PSResource instances.
Resource-DSC comments are now generated.
Procsets moved into the Prolog where they belong.
Font setup is no longer a resource as it is not interchangeable between rendering runs. It's now just setup code with FOP-specific comments surrounding it.
In the future, this may also make it possible to write a size-optimized PS file from which the resources are stripped while writing the file. These resources will then be installed directly on a printer or inserted into the Prolog by a post-processor.
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@239419 13f79535-47bb-0310-9956-ffa450edef68
New "-foout" parameter which only saves the intermediate XSL-FO file when -xml and -xsl are used. Saves people from having to call a separate XSL transformer.
Moved CLI to its own package. New main class is org.apache.fop.cli.Main.
InputHandler is not passed through the FOUserAgent anymore. IMO it doesn't belong there. Instead I defined an interface "Renderable" in the AWT preview that InputHandler implements. This is used exclusively for reloading the document inside the preview dialog.
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@239409 13f79535-47bb-0310-9956-ffa450edef68
Fix the DSC comment (Begin|EndDocument) for EPS files. It wasn't in the right place.
Added a FOP-specific comment around the whole EPS to delimit the EPS code.
Use the original URI if the EPS file has no name (which isn't parsed at the moment anyway).
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@234504 13f79535-47bb-0310-9956-ffa450edef68
Remember the original URI in the FopImage instance.
Output the original URI in the comment when writing an image to PostScript. Useful for people who post-process their PostScript files.
Fixed the position of the image comment so it can be used to factor out duplicate images when combining multiple PostScript files.
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@234500 13f79535-47bb-0310-9956-ffa450edef68
This patch ports the 0.20.5 CCITTFaxDecode filter functionality and its support
of direct embedding on certain TIFF images to the trunk.
It also cleans up some of the image handling with respect to consistent closing
of the input stream to avoid dangling open files.
Submitted by: Manuel Mall <mm.at.arcus.com.au>
Changes to the patch:
Fixed a small problem with the NullFilter in the PDF library.
Used tiff_group4.tiff in external-graphic-tiff.xml.
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@234261 13f79535-47bb-0310-9956-ffa450edef68
Some code that can be used by both PS and PDF renderers factored out into a common base class (AbstractPathOrientedRenderer).
Coordinate system of PS renderer and PSGraphics2D changed to be based on points rather than millipoints to be the same as the PDFRenderer. This improves the chance to reuse code.
PSGenerator set to PostScript level 2 now, should later be configurable. There may still be some PS commands which should be changed from Level 2 to Level 1, just to be able to support Level 1 later should anyone ask for it.
Bitmap, EPS and SVG support should be mostly restored now.
PSState was extended to provide the same break-out mechanism for fixed b-cs. And it has better support for tracking the graphics state.
Added some FOP-specific comments to certain constructs for people who want to post-process the PS output.
BatchDiffer shows very few visual differences now on the layout engine test cases between PDF and PS.
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@234201 13f79535-47bb-0310-9956-ffa450edef68
Add a method to clear all image caches for testing purposes. It shouldn't be necessary anymore to call such a method in a production environment or we have a problem with the image cache.
Renamed FOUserAgent.getStream() to FOUserAgent.resolveURI() which now simply returns a Source instance which the ImageFactory uses to get at an InputStream somehow.
Submitted by: Manuel Mall <mm.at.arcus.com.au>
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@232949 13f79535-47bb-0310-9956-ffa450edef68
1. Addresses the URI resolving issue as discussed in this bug by providing a
FOP implementation of the URIResolver interface as well as the capabilities to
set a URIResolver on the FOUserAgent object.
2. Modifies the BMPReader to extract the resolution information.
3. Fixes a possible array bounds exception in BMPImage which can happen for BMP
images with extra bytes at the end.
4. Provides some infrastructure in ImageFactory in preparation of external
configuration of multiple prioritised image providers per mime type.
5. Sets a proper base URL in SVGElement.
6. Provides test cases and test images for the different formats and
resolutions.
Submitted by: Manuel Mall <mm.at.arcus.com.au>
Patch slightly modified:
- EPS sample graphic exchanged with a very simple and more importantly much smaller one generated by Barcode4J.
- Enabled resolution checking for some of the format-specific testcases (especially after working around resolution detection for PNG)
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@232786 13f79535-47bb-0310-9956-ffa450edef68
Fix regression that caused duplicate IDs when Reload was pressed in the AWT Viewer. The Fop instance should only be used for one single rendering run. The regression was caused by the introduction of a member variable for the FOTreeBuilder which is used to fetch the rendering results.
Image scaling didn't work in the Java2D based renderers, as the putImage
function was referring to the wrong height/width.
Submitted by: Richard Wheeldon <richardw.at.geoquip-rnd.demon.co.uk>
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@232234 13f79535-47bb-0310-9956-ffa450edef68
AbstractFopImage subclass using ImageIO (JDK >= 1.4) to load images (works with GIF, too). Some of the code dealing with the BufferedImage could probably be extracted to a common subclass since it's mostly a copy from a different FopImage implementation.
Fix for Java2DRenderer to paint regions other than region-body. Area tree was not properly cloned.
Submitted by: Richard Wheeldon <richardw.at.geoquip-rnd.demon.co.uk>
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@231213 13f79535-47bb-0310-9956-ffa450edef68
Committing a hack I've started earlier. The analyzer did not always recognize an SVG file as such, especially XML encoded in a two-byte charset. This will still need some attention.