Bugzilla #47031:
PDFGraphics2D.writeClip doesn't generate a clip command anymore when the clip path is empty.
Submitted by: Francois Fernandes <f.fernandes.at.web.de>
Bugzilla #47000:
Added a custom text painter for rendering SVG text using text operators when rendering to PostScript or EPS. Text is no longer painted as shapes, thus creating much smaller files.
Bugzilla 47027: Correction for interpretation of pixel-lengths, as suggested by Jeremias.
+ minor changes to the fotreetest-classes: distinguish between fatal errors due to malformed testcases, and genuine assertion failures.
Some cleanup:
* extraction of the footnote-related loops in getNextKnuthElements() into private methods
to facilitate step-over when debugging (no additional breakpoints needed to skip those loops)
* merging of the private doPhase3() methods, so theoretically, it becomes possible to do
column-balancing, even with a last page condition, and to eliminate a significant amount
of duplicate lines of code
* other minor changes, like renaming stray Hungarians, renaming some variables to make the
code slightly more self-explanatory, removal of unused import, and whatnot...
Jeremias Maerki [Fri, 27 Mar 2009 14:19:00 +0000 (14:19 +0000)]
Improved multi-threading testbed a bit:
- Prints out a report with some statistics at the end.
- Worker threads moved into their own thread group for easier profiling.
Adrian Cumiskey [Wed, 25 Mar 2009 10:32:23 +0000 (10:32 +0000)]
Added some accessor methods to some public member variables. I have left the public member variables exposed for now as changing them to private/protected may possibly break something external to FOP.
Simplified the setting of filters in the AbstractPDFStream hierarchy. Instead of unnecessarily re-defining the setupFilterList method, sub-classes just define a getDefaultFilterName method
Set svn:eol-style property on page-position-last_break-before_bugzilla46489.xml test case. Simplified it by removing superfluous content and references to fonts that are not available by default.
Fixed small indentation issue in ElementListUtils.
Jeremias Maerki [Mon, 23 Mar 2009 07:54:43 +0000 (07:54 +0000)]
Deprecated font base url methods on user agent level in favor of the methods on the FontManager accessible via FopFactory as proposed in:
http://mail-archives.apache.org/mod_mbox/xmlgraphics-fop-dev/200903.mbox/%3C20090310161419.8FA8.60BA733C@jeremias-maerki.ch%3E
Add startsWithForcedBreak() utility method to ElementListUtils.
Avoid generating "in-between" penalties if the content list that will be appended already starts with a forced break.
Adrian Cumiskey [Fri, 20 Mar 2009 15:18:54 +0000 (15:18 +0000)]
A little font configuration cleaning.
* Extracted business logic from PrintRendererConfigurator and created a new FontDetector and FontAdder in org.apache.fop.fonts package.
* Created a new FontInfoConfigurator that factors out a lot of the static stuff in PrintRendererConfigurator.
* PDFDocumentGraphics2DConfigurator now uses a new FontInfoConfigurator() instead of static PrintRendererConfigurator.buildFontListFromConfiguration() call.
* static method updateReferencedFonts() in PrintRendererConfigurator moved to an instance method in FontManager.
Bugzilla 46828: Activation of the possibility to use CachedRenderPagesModel to conserve memory in case of large documents with a lot of cross-references. (area tree will be serialized to disk to avoid keeping it entirely in memory)
Thanks to Dario Laeria for submitting and testing.
Jeremias Maerki [Tue, 10 Mar 2009 16:16:31 +0000 (16:16 +0000)]
Restored ability to specify any URI base URI (URL), not just file URLs. For file URLs and file paths there's still a check whether the directory exists.
Enabled FontBaseBadTestCase.
Jeremias Maerki [Mon, 9 Mar 2009 08:12:45 +0000 (08:12 +0000)]
Restored compatibility with Java VMs that don't support nio Charsets for codepages such as Cp500 (EBCDIC). The simplifications for the fallback case may look wrong but the code basically represents the state before revision 746664 which introduced this problem.
Jeremias Maerki [Sun, 1 Mar 2009 08:55:35 +0000 (08:55 +0000)]
Added support for adding extension elements and foreign attributes on fo:page-sequence.
AFP: Added support for Invoke Medium Map (IMM).
AFP: Fixed a bug adding TLEs in DataStream (TLEs were added to the page group instead of to the page).
Jeremias Maerki [Mon, 23 Feb 2009 13:25:08 +0000 (13:25 +0000)]
";mode=painter" MIME suffix removed from all new IFDocumentHandler implementations.
Changed RendererFactory to prefer IFDocumentHandler over Renderer if available.
A setting on RendererFactory allows to to prefer Renderer over IFDocumentHandler if necessary for compatibility. (not yet tied into CLI or configuration)
Jeremias Maerki [Sun, 22 Feb 2009 12:40:44 +0000 (12:40 +0000)]
Merged feature branch https://svn.apache.org/repos/asf/xmlgraphics/fop/branches/Temp_AreaTreeNewDesign (603620-746655) into Trunk.
This adds a new intermediate format to FOP. Please see the documentation for details.
Jeremias Maerki [Sun, 22 Feb 2009 11:07:43 +0000 (11:07 +0000)]
Trying to work around a problem reintegrating the branch. Found a blog entry that lists deleting mergeinfo entries in subdirectories as a possible solution. Hopefully, this will help.
Jeremias Maerki [Mon, 16 Feb 2009 08:25:25 +0000 (08:25 +0000)]
Added an additional font fallback to PrintRenderer to avoid some problems when processing an intermediate file generated for a different output format than the current one.
Jeremias Maerki [Mon, 16 Feb 2009 08:09:29 +0000 (08:09 +0000)]
Now using the "font" filter list entry for font streams.
Made T1 and TTF streams children of a commons base class.
Refactored default filter addition a bit.
Jeremias Maerki [Sun, 15 Feb 2009 16:38:14 +0000 (16:38 +0000)]
Fixed IllegalArgumentException (no object number assigned) for this makeLink method. It makes no sense to add this to the trailer objects AFAICS. This particular method is only used by PDFGraphics2D's makeLink() method (SVG's #svgView(viewBox()) functionality). The positioning of the viewbox is still wrong, though. It must have been broken at some point.
Jeremias Maerki [Wed, 11 Feb 2009 08:41:04 +0000 (08:41 +0000)]
Bugzilla #46686:
Use temporary directory for the font cache if the user home directory is not write-accessible.
Submitted by: Alok Singh <alok.at.jivesoftware.com>
Modifications to patch by jeremias:
- Bugfix: original code switched to temporary directory if the .fop directory already existed in user home.
Jeremias Maerki [Mon, 9 Feb 2009 16:58:29 +0000 (16:58 +0000)]
Added code to detect when a Type 1 font is not configured to use its native encoding. In such a case it needs to be re-encoded in PostScript. That used to always happen in earlier FOP versions but since support was added for all glyphs in a font, this has become a problem. So this change restores the behaviour of before when XML font metrics files or just the PFM are used.
Jeremias Maerki [Mon, 9 Feb 2009 15:29:33 +0000 (15:29 +0000)]
Bugzilla #45342:
AFP Fonts: Fixed interpretation of metric for fonts with fixed metrics and made sure all repeating groups in FNP (Font Position) are processed.
Submitted by: Emil Maskovsky <styryx.at.seznam.cz>
Modifications to patch by jeremias:
- Style changes (tabs, variable names, javadocs)
- Fixed handling of spaces in URLs (as in IF branch)
- Modified the way the metrics are calculated (Emil's solution didn't produce the values required by FOP)
Jeremias Maerki [Fri, 6 Feb 2009 14:39:07 +0000 (14:39 +0000)]
Moved area tree example to package embedding/atxml.
Created a new concatenation example for the new IF in package embedding/intermediate.
Exchanged IFRendererMaker with IFSerializerMaker.
Removed unused method getConfigurator() from document handler makers.
Extracting original nested IFException in IFParser's parse() method.
Removed obsolete IFSerializerConfiguration. Now covered by PrintRendererConfigurator.
Delegating FontInfo setter calls to mimic handlers in IFSerializer.
Fixed a bug in RendererFactory for the case when FOUserAgent.setDocumentHandlerOverride() is used.
Added a generic IFDocumentHandler proxy class (IFDocumentHandlerProxy).
Added a simple IFConcatenator helper class for simple IF concatenations (experimental).
Jeremias Maerki [Thu, 5 Feb 2009 10:40:52 +0000 (10:40 +0000)]
AFP Output: Added a configuration option to override the resource level defaults in the code. The chosen defaults in code may not always be the best. For example, a user reported that they can't use print-level images for some reason and it is not possible to switch on inlining for background images.
Jeremias Maerki [Wed, 4 Feb 2009 10:10:13 +0000 (10:10 +0000)]
Trying to work around a problem with Java 1.4 when spaces are in Ant's basedir property as happened on my local Hudson instance because I had spaces in the Hudson job name.
Jeremias Maerki [Wed, 4 Feb 2009 09:28:48 +0000 (09:28 +0000)]
Fixed classpath problem concerning XMLUnit.
Split JUnits targets into a reduced set (without layout engine tests) and a full set.
Reactivated "gump" target and assigning it the reduced set. I want to see if Gump can do a bit more of our test suite without failing.
Jeremias Maerki [Fri, 30 Jan 2009 19:28:59 +0000 (19:28 +0000)]
Fixed test error for transcoders.
Enabled disabling strict validation from inside the test case. This enabled activating the border/padding test case for region references.
Refactored layout engine and intermediate format tests a bit to increase code reuse.
Fixed the way border/padding are set on the area tree. The current way had unwanted side-effects for the AreaTreeParser.
Added support for border/padding on region references when parsing from area tree XML.
Bugzilla #46638: MinOptMaxUtil.toMinOptMax was converting LengthRangeProperty objects into illegal MinOptMax objects (in some cases opt could be inferior to min).