Reverted changes made in revision 796809 (manual merge of clean-up changes made in the ChangingIPDHack branch). Those changes will be re-applied when merging the branch back to Trunk with svn merge --reintegrate (if everything goes well...)
Bugzilla 46905: Added basic implementation for column-level keeps.
Also added one disabled-testcase for a remaining issue with page-level
keeps in multi-column layout.
Simon Pepping [Tue, 18 Aug 2009 20:05:01 +0000 (20:05 +0000)]
Prepare for new hyphenation pattern files, which do not have their own classes and instead use the default classes in FOP. Modified the build process to a forked java task, in order to be able to set a larger stack size for the compilation of the large number of classes. Added an ant task to generate a new default classes file, to be used with an update of the Unicode Character Database.
Renamed PageScaleAttributes class into PageScale.
Simplified and improved its behaviour:
- return null for an empty string
- allow for an arbitrary sequence of white spaces between the scales
- check that number of arguments is no more than 2
- other small improvements
Fixed issues in PageBoundaries class:
- typos in method name and documentation
- unnecessary conversions from double to int
- a single space between values of bleed and crop-offset is too restrictive; changed into a sequence of white space characters
Cleanup and improvements of prepress tests:
- split PrepressTest class into two separate PageScaleTest and PageBoundariesTest test cases
- moved newly created test cases into prepress sub-package
- re-organized tests and made them more complete
Fixed and improved documentation about prepress extensions:
- AFAIU all of them have been implemented in both the PDF and Java2D renderers
- the default value of crop-offset is bleed
Jeremias Maerki [Tue, 4 Aug 2009 08:10:43 +0000 (08:10 +0000)]
What we thought were cubic curves in GOCA, were actually just quadratic ones. This changes tries to approximate cubic Bézier curves with the quadratic fillets available in GOCA. This should improve vector graphic quality in certain cases.
Jeremias Maerki [Mon, 3 Aug 2009 14:25:41 +0000 (14:25 +0000)]
Bugzilla #47311:
Fixed typos.
Bugfix: when crop-offset wasn't specified, but bleed was, the media box was wrong.
Tried to fix encapsulation problem mentioned by Vincent.
Jeremias Maerki [Mon, 3 Aug 2009 06:43:45 +0000 (06:43 +0000)]
Reverted rev 798521.
Reason: Loss of accuracy. PDF is operating at points rather than millipoints. Especially when it comes to prepress features people will want exact sizes in the target PDFs.
Jeremias Maerki [Sun, 2 Aug 2009 19:41:37 +0000 (19:41 +0000)]
Bugzilla #47311:
Added an initial set of extensions for prepress support (fox:bleed, fox:crop-offset, fox:crop-box and fox:scale). This is currently supported only by PDF and Java2D renderers.
Submitted by: Peter Coppens <pc.subscriptions.at.gmail.com>
Changes to patch by jeremias:
- crop box expands from trim box rather than the bleed box.
- fixed positioning in AWT preview
Additional changes included:
- disabled the border around every page in Java2DRenderer.
- if background painting is enabled for the Java2DRenderer, it uses the bleed box rather than the trim box.
AFPEventProducer was moved months ago but this file not adjusted. That cause an IllegalStateException: Event model doesn't contain the definition for org.apache.fop.afp.AFPEventProducer
Added support for AFP font embedding. Note: this changes the default behaviour. Like with PDF and PS, all fonts are embedded by default unless matched in the "referenced-fonts" section in the configuration.
Added support for embedding external AFP form maps (form defs) using the afp:include-form-map extension.
Fixed a small problem with AFP-related events.
DefaultFOPResourceAccessor got a fallback to the user agent's base URI if no category base URI is specified.
Adrian Cumiskey [Sun, 26 Jul 2009 10:13:37 +0000 (10:13 +0000)]
Fixes GUMP build problems, the automated e-mail was starting to annoy so I scratched an itch :).
* Updated xmlgraphics-commons to trunk version.
* Fixed ImageRendered constructor call in PDFGraphics2D and AFPGraphics2D to be compatible with the new parameter that has been added in xmlgraphics-commons.
Merged clean-up-only changes made in the ChangingIPDHack branch. Those correspond to the following revision numbers:
785291
785632
787733
787769
788371
793645
Bugfix: make sure all of the children elements are re-laid out after an IPD change
Removed cast into BlockLM now that the special getNextKnuthElements has been defined in LayoutManager
Added fall back handling of layout managers that don't support IPD change (lists and tables, mainly). Their elements are simply added at the start of the new element list, so not taking the new IPD into account. This will lead to overflowing content (without notice) if there is a change from a wider page to a narrower one, and blank space at the right of the page in the opposite situation. Border- and space-before will be handled as if the element were starting on the new page (i.e., border will appear even if its conditionality has been set to "discard").
Element generation will be re-done starting from the first layout manager that is not enclosed by a non-restartable LM. Its space-before will be treated as if it were starting the page (i.e., ignored if .conditionality is not set to "retain").
Restored vertical justification of content on page before ipd change.
Restored support for spaces on pages following the ipd change.
Added basic tests for borders.
Some cleanups and attempts at improving code-readability and -extensibility:
* added inner holder class to BreakingAlgorithm to contain everything related to the fitness classes. Improves readability of both the code and the trace messages.
* extracted blocks of code in BreakingAlgorithm.findBreakingPoints() into protected methods. Following the already existing handleBox(), added handleGlueAt() and handlePenaltyAt() to provide extension points to subclasses. Extraction of the code-blocks related to the node-recovery mechanism.
* extracted blocks of code in BreakingAlgorithm.considerLegalBreak() into protected methods: deactivateNode(), activateNode() and forceNode()
* factored the functionality to obtain the index of the first box into KnuthSequence... just seemed to make sense; may be useful elsewhere.
* some (but not all :() javadoc fixups
* minor changes to LineLayoutManager and PageBreakingAlgorithm to take into account above changes
First very rough implementation of Changing IPD. It works only with (possibly nested) fo:block elements containing pure text. Doesn't work if the page break occurs /between/ two fo:block. There's a problem with elastic spaces that get lost after the ipd change. There is duplicated code especially in BlockStackingLayoutManager. Plus probably plenty of other issues...
Adrian Cumiskey [Fri, 19 Jun 2009 11:04:13 +0000 (11:04 +0000)]
No code change here, just fixing the indentation of the if (useInclude) block that somehow got messed up by a previous commit/merge (http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/src/java/org/apache/fop/afp/AFPResourceManager.java?revision=746664&view=markup).
AFP Output: Add support for fractional font-sizes, and make sure that, for non-registered sizes, the substitution will always map to the smaller size if there is also a larger one available
ApacheCon Europe 2009 is over, commented out link.
Increased max heap size allocated to Cocoon, otherwise an OutOfMemoryError will occur when generating the compliance PDF (I finally found out why I was having this error and how to fix it).
Changed meaning of '-v' option to 'verbose', which will print FOP's version and proceed. Added a '-version' option to simply print the version then exit, following Java practices.
Change made as per user demand, see thread here:
http://markmail.org/thread/e7juy7wvj7ujkltx