From: <wak...@us...> - 2011-04-19 20:57:30
|
Revision: 1523 http://rails.svn.sourceforge.net/rails/?rev=1523&view=rev Author: wakko666 Date: 2011-04-19 20:57:21 +0000 (Tue, 19 Apr 2011) Log Message: ----------- Add in batik-1.7, update classpath. Modified Paths: -------------- trunk/18xx/.classpath trunk/18xx/test/SVGOffscreenLoader.java Added Paths: ----------- trunk/18xx/lib/batik-1.7/ trunk/18xx/lib/batik-1.7/CHANGES trunk/18xx/lib/batik-1.7/LICENSE trunk/18xx/lib/batik-1.7/NOTICE trunk/18xx/lib/batik-1.7/README trunk/18xx/lib/batik-1.7/batik-rasterizer.jar trunk/18xx/lib/batik-1.7/batik-slideshow.jar trunk/18xx/lib/batik-1.7/batik-squiggle.jar trunk/18xx/lib/batik-1.7/batik-svgpp.jar trunk/18xx/lib/batik-1.7/batik-ttf2svg.jar trunk/18xx/lib/batik-1.7/batik.jar trunk/18xx/lib/batik-1.7/lib/ Modified: trunk/18xx/.classpath =================================================================== --- trunk/18xx/.classpath 2011-04-18 16:18:35 UTC (rev 1522) +++ trunk/18xx/.classpath 2011-04-19 20:57:21 UTC (rev 1523) @@ -1,15 +1,16 @@ -<?xml version="1.0" encoding="UTF-8"?> -<classpath> - <classpathentry kind="src" path=""/> - <classpathentry exported="true" kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/> - <classpathentry exported="true" kind="lib" path="lib/batik-1.6/batik.jar"/> - <classpathentry exported="true" kind="lib" path="lib/batik-1.6/lib/js.jar"/> - <classpathentry exported="true" kind="lib" path="lib/batik-1.6/lib/pdf-transcoder.jar"/> - <classpathentry exported="true" kind="lib" path="lib/batik-1.6/lib/xerces_2_5_0.jar"/> - <classpathentry exported="true" kind="lib" path="lib/batik-1.6/lib/xml-apis.jar"/> - <classpathentry exported="true" kind="lib" path="lib/log4j-1.2/log4j-1.2.14.jar"/> - <classpathentry kind="lib" path="lib/jgraph5/jgraph.jar"/> - <classpathentry kind="lib" path="lib/jgrapht-0.7.3/jgrapht-jdk1.5.jar"/> - <classpathentry kind="lib" path="lib/junit_3.8.2/junit.jar"/> - <classpathentry kind="output" path="classes"/> -</classpath> +<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry excluding="lib/batik-1.7/|lib/jgraph5/|lib/jgrapht-0.7.3/|lib/junit_3.8.2/|lib/log4j-1.2/|lib/batik-1.7/lib/|lib/jgraph5/|lib/jgrapht-0.7.3/|lib/junit_3.8.2/|lib/log4j-1.2/|lib/batik-1.7/|lib/batik-1.7/lib/" kind="src" path=""/> + <classpathentry exported="true" kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/> + <classpathentry kind="lib" path="lib/log4j-1.2/log4j-1.2.14.jar"/> + <classpathentry kind="lib" path="lib/jgrapht-0.7.3/jgrapht-jdk1.5.jar"/> + <classpathentry kind="lib" path="lib/junit_3.8.2/junit.jar"/> + <classpathentry kind="lib" path="lib/jgraph5/jgraph.jar"/> + <classpathentry kind="lib" path="lib/batik-1.7/batik.jar"/> + <classpathentry kind="lib" path="lib/batik-1.7/lib/batik-bridge.jar"/> + <classpathentry kind="lib" path="lib/batik-1.7/lib/batik-dom.jar"/> + <classpathentry kind="lib" path="lib/batik-1.7/lib/batik-ext.jar"/> + <classpathentry kind="lib" path="lib/batik-1.7/lib/batik-gvt.jar"/> + <classpathentry kind="lib" path="lib/batik-1.7/lib/batik-util.jar"/> + <classpathentry kind="output" path="classes"/> +</classpath> Added: trunk/18xx/lib/batik-1.7/CHANGES =================================================================== --- trunk/18xx/lib/batik-1.7/CHANGES (rev 0) +++ trunk/18xx/lib/batik-1.7/CHANGES 2011-04-19 20:57:21 UTC (rev 1523) @@ -0,0 +1,1528 @@ +Change Log +========== + +The following log records some of the most important changes. +Bug fixing is an on-going task, so it is implied in all sub-releases. + +1.7beta1 -> 1.7 +--------------- + +1. Bugzilla problem reports fixed: + + 26815, 28344, 35165, 36570, 37496, 38498, 40163, 40727, 41205, + 41820, 41947, 41955, 41988, 42014, 42021, 42032, 42075, 42118, + 42137, 42168, 42169, 42196, 42209, 42210, 42212, 42221, 42228, + 42255, 42258, 42311, 42312, 42333, 42381, 42386, 42479, 42504, + 42505, 42543, 42645, 42651, 42697, 42698, 42807, 42961, 42963, + 442968, 3022, 43043, 43045, 43165, 43194, 43195, 43370, 43418, + 443446, 3638, 43657, 43744, 43760, 43764, 43787, 43854, 43871, + 443904, 3953, 44029, 44054, 44092, 44146 + +2. New features + + * xml:id support (http://www.w3.org/TR/xml-id/). + * ElementTraversal support (http://www.w3.org/TR/ElementTraversal/). + * Enhanced DOM Viewer window, contributed from Ivan Andjelkovic, + a Google Summer of Code student. + +3. Improvements + + * Support for cursor="move" on OS X, and cursor="help" on all + platforms. + * Improved conversion to/from WMF. + * data: URIs now supported as external stylesheets, scripts, filters. + * SVG 1.1 feature strings now reported. + * The viewBox="" attribute on <svg> is now animatable. + * Implemented SVGSVGelement.getViewBox(). + * A document's document element can now be replaced. + * Performing animation hyperlinking backwards is now supported, as + well as using <a> elements to hyperlink to animations. + * Updated pdf-transcoder.jar to one built from FOP 0.94. + * Squiggle's View Source window is now syntax highlighted. + +4. Bug fixes + + * XPath interface objects now exposed to ECMAScript. + * The three other MIME types for ECMAScript are now really supported + (text/javascript, application/javascript, application/ecmascript). + * Pseudo-elements now parsed properly in CSS selectors. + * Avoid null pointer exception when event-base timing specifiers + in animations reference an element by ID within a <use> shadow tree. + * Invalid min="" and max="" values on animation elements now ignored. + * Corrected CSS cascade order for rules of equal specificity. + * Fixed CSS :lang() processing so that it matches case insenstiviely, + using xml:lang="" as well as lang="", and using proper hyphen- + separated tokens. + * Gradients with gradientUnits="objectBoundingBox" disabled when the + bounding box has zero width or height. + * Avoid an array index exception for certain degenerate motion path + animations. + * Fixed mouse event button reporting. + * Avoid null pointer exception when cloning <symbol> and <image> + elements. + * Make empty <filter> elements result in no rendering for the + filtered element. + * SVGStylable.getPresentationAttribute() now returns null if the given + presentation attribute is not specified on the element. + * Specifying textLength="" on text elements that have non-text nodes + as their first children now works. + * Avoid numerical accuracy issues when sampling frozen animations. + * Event listeners are now removed when <text> elements are removed + from the document. + * Invalid SVG 1.0 feature string removed. + * Ensure animation elements are properly deinitialised when they are + removed from the document. + * Allowed animations in <use> element shadow trees to have syncbase + timing specifiers that refer to elements outside the shadow tree. + * Fixed bug in DOM event removal/dispatch. + * Ensure the animation engine is resumed if it is sleeping when a + beginElement() call is made. + * Avoid a null pointer exception in JSVGScrollPane if the document + doesn't return a bounds. + * Avoid a null pointer exception when painting a GraphicsNode on to an + SVGGraphics2D. + * Rasterizer -cssUser command line argument now resolved against + current working directory. + * Fixed bug in key event dispatching code. + * Decrease memory required for storing animation elements' previous + intervals (used for hyperlinking). + * Avoid infinite loop for animations with multiple, identical begin + (or end) instance times. + * Ensure TIFF and JPEG codecs really aren't compiled unless the relevant + Sun classes are present. + * Avoid null pointer exception when accessing animated marker orient + values. + * Patched Rhino so that the ECMAScript debugger runs on OS X. + * Ensure the animation engine is initialised before the SVGLoad event + is dispatched. + * Restored exception throwing from bridge classes when required + length attributes are missing. + * Duplicated codec classes removed from awt-util jar. + * Avoid null pointer exceptions in DOMMouseEvent objects. + * Motion animation transforms are now applied after the transform="" + attribute. + * Fixed bug in DOM event default action invocation in SVG 1.2 documents. + * Fixed bug in CSS class name matching, which occured only when an + element was declared to be a member of multiple classes, where one + is a prefix of another. + * Fixed bug on OS X where the zoom interactor overlay was not shown. + +5. Misc + + * Official maven artifacts are now supplied. + +1.6 -> 1.7beta1 +--------------- + +1. Bugzilla problem reports fixed: + + 22260, 25428, 28337, 29417, 29552, 32415, 34217, 34234, 34364, + 34847, 34938, 35349, 35480, 35549, 35655, 35661, 35683, 35722, + 35727, 35773, 35878, 35976, 35977, 36165, 36253, 36278, 36309, + 36455, 36483, 36485, 36493, 36511, 36613, 36614, 36615, 36743, + 36745, 36746, 36747, 36769, 36889, 36924, 36933, 37276, 37497, + 37890, 37891, 37892, 37986, 37989, 38045, 38158, 38176, 38178, + 38183, 38379, 38475, 38497, 38549, 38558, 38568, 38750, 38775, + 38782, 38785, 38831, 38872, 38930, 38932, 38933, 38990, 39032, + 39058, 39202, 39297, 39303, 39318, 39361, 39751, 39755, 39784, + 39831, 39838, 40098, 40167, 40336, 40368, 40392, 40393, 40397, + 40403, 40405, 40594, 40605, 40631, 40681, 40686, 40857, 40898, + 40927, 40994, 41079, 41165, 41216, 41234, 41288, 41329, 41331, + 41336, 41473, 43954 + +2. New features + + * DOM Level 3 Core/Events/XPath support. + * Improved WMF transcoder support. + * Override style declaration support. + * Near complete SMIL Animation support. + * SVG 1.2 features: + * resource documents + * shapechange and RenderedBBoxChange events + * SVGGlobal startMouseCapture/stopMouseCapture methods + * handler elements + +3. Improvements + + * The SVG namespace declaration is now not assumed for the document element + when an SVG declaration is not present. Certain non-conformant content + will now be identified as being in error. + * New MacRenderer implementation that avoids 10x slowdown on + Tiger. + * Mutations to flowText contents now cause the rendering to update, and + flowRegion objects are now rendered. + * Support for normalized path segments on SVGAnimatedPathData, thanks to + Andres Toussaint. + * Updated pdf-transcoder.jar to one built from FOP 0.9alpha1: + * This fixes text being drawn as text in PDF. + * JPEG streams being embedded as JPEG. + * Default bitmap dpi is 300. + * Most gradients and patterns are now correct (pattern overflow isn't + handled properly although most of the code is present), and + gradients with complex repeats are rasterized due to difficulties + expressing them in PDF. + * Transcoders with the KEY_EXECUTE_ONLOAD hint set force the document + to be dynamic. + * Added JIIO codecs to Batik (not enabled by default) + * Support for finding XML Parser through JAXP. + * Enhancements to ArabicTextHandler. + * Update Manager's MIN_REPAINT time is now adjustable. + * GraphicsUtil warning about Graphics from BufferedImage + w/o BUFFERED_IMAGE hint is now controllable with property. + * JSVGScrollPane now has 'scrollbarAlwaysVisible' mode. + * Improved Path parser so it is more conformant. + * Updated Rhino to 1.6R5. + * Documents in Squiggle's Go menu now have the full URI as a tooltip. + * Better version number reporting from org.apache.batik.Version. + * Implemented SVGPathElement.getPathSegAtLength. + * Implemented 'getFunctionName' for built in CSS functions. + * Exposed SAXDocumentFactory's parser to subclasses. + * Added a -snapshotTime option to the rasteriser. + * Now using Apache XML Commons External, for SAC, DOM 3 Core, SMIL Animation + and SVG 1.1 DOM bindings. + * Encoding as specified in a Content-Type header's charset parameter is now + honoured when scripts are loaded. + * Changed InterpreterFactory so that multiple MIME types can be associated + with a given Interpreter. + * text/javascript, text/ecmascript, application/javascript and + application/ecmascript are now all supported as script types for Rhino. + Processing of application/ecmascript is as specified in RFC 4329. + * Improved integration when running under Mac OS X: Squiggle's menu bar + is now at the top of the screen, the application window has a proper + name and functional About/Preferences/Quit menu items, and a Squiggle.app + application bundle can now be created. + * JAR files now have Implementation-* attributes. + * Added an interface for all ImageRenderers to get/set RenderingHints. + +3. Bug fixes + + * SVGMatrix.rotate now takes deg rather than radians. + * Fixed mouseout/mouseover tracking, which regressed some time between + 1.5beta5 and 1.6. + * Fixed misplaced glyph for mixed LTR and RTL text. + * Fixed handling of tooltips from title elements. + * Fixed rendering error (bug 36511). + * Fix for broken event propagation across 'use' element shadow tree boundary. + * Fixed a bug in the handling of 'x', 'y', 'width', 'height', + on feImage elements. + * Fixed bug in EventTarget.{add,remove}EventListenerNS wrapper + for Rhino. + * Fixed memory leak with dynamically added title tooltips. + * Fixed bug with update regions and filters. + * Fixed a problem with feSpotLight and feSpecular lighting (bug 36745). + * Fixed bug with event removal for multiple events and the same target + (thanks Andreas). + * Fixed problem with lowercase 'European' vowels (accented vowels). + * Fixed duplicated fragment identifier bug. + * Fix to allow transcoders that execute onload to work with SVG 1.2 + documents. + * Fix incorrect reporting of modifier key states in DOM UI event objects. + * The broken link image works again now. + * Convert "" to null for namespace URIs given to public DOM interfaces. + * Gradient scaleback is now 0.999 rather than 0.97. + * ttf2svg now emits a document with an SVG namespace declaration. + * Include the o.a.b.ext.awt.image.spi.{ImageWriter,RegistryEntry} service + resource files in the codec jar. (Fixes problems with data: URIs for + images when Squiggle is run from the jars.) + * Fixed problem with ZoomAndPan handling overriding user disabling of + interactors. + * More sensible handling of source 'URLs' in svgrasterizer. + * Greyscale sources are now treated as if they have sRGB Gamma. + * Fixed SVGTextContentElement.getExtentOfChar to use glyph metrics rather + than the glyph shape bounding box. + * Changed Errors to UnsupportedOperationExceptions for unimplemented methods. + * JSVGViewerFrame uses reflection for the Rhino debugger to enable + compilation without Rhino. + * Fixed phantom 'double click' bug. + * Handle 'style' elements added and removed from the document when they are + not at the root of the addition/removal. + * Make CSS engine not throw an NPE for extension elements that don't expose + an OverrideStyleProvider. + * Fixes for text-on-a-path with glyphs who's geometry doesn't "start" at 0. + * Various deadlock fixes. + * Fixed bug where writing TIFF with JPEG compression fails. + * Fixed significant performance bug in creating geometry (it was + parsing the entire path for each entry in the path, O(N^2)). + * Fixed SVGTextContent interfaces on FlowRoot elements. + * Fixed NPE when reloading an SVG 1.2 document quickly. + * Fixed bug where mousing over 'a' elements would result in exceptions. + * Avoid NPEs when loading scripts from file: URIs. + * Fixed flowText regression by rebasing off SVGOMTextPositioningElement. + * radialGradient has a default value of "50%" for 'r' (thanks Tonny). + * Fixed bug in key event dispatching when compiled under JDK 1.3. + * Avoid precision errors in stringification of transform list values + (thanks Nick). + * Unmaximize Squiggle window if the "Automatically resize window when + loading documents" option is turned on. + * Fixed improper rendering of the batik70.svg sample under OS X. + * Fixed synchronization bug in the SVG generator. + +4. Misc + + * Code now compiles under Java 1.5 and 1.6. + * Lots of code/javadoc cleanups. + * New Forrest-based website for Batik. + * New about box/splash screen. + * Visual refresh for Squiggle's toolbar icons and Preferences window. + +1.5.1 -> 1.6 +------------ + +1. Bugzilla problem reports fixed: + + 28035, 28188, 28429, 28432, 28487, 29110, 29891, 30580, 30584, + 30739, 30923, 30925, 30948, 31603, 32108, 32435, 32872, 32951, + 33242, 33733, 33890, 33923, 33986, 34030, 34041, 34115 + + +2. SVG 1.2 Features: + + * All SVG 1.2 elements/features have been moved from + the Batik namespace into the SVG 1.2 namespace (except for + flowText which remains, due to some loss of functionality + with the current flowRoot and potential spec instability). + * Implementation of SVG 1.2 flowRoot element (text flow into + arbitrary regions with bidi support). + * There is now an SVG12CSSEngine which has support for new + properties in SVG 1.2 + + +3. Improvements: + + * Massive performance improvement (>10X) for drawing on Mac OS X. + * Document.getElementById now uses a Hashtable to speedup lookups. + * JavaScript can now be used in an Applet out of the box. + * Added support for 'font' shorthand property. + * Added support for 'deselectAll' SVG DOM call. + * getEncolsureList and getIntersectionList are implemented. + * Added support for get[Screen]PixelUnitToMillimeterX/Y + * SVG DOM getTotalLength, and getPointAtLength are now implemented. + * Support for preserveAspectRatio DOM methods. + * Squiggle browser now has a 'Save As' menu item. + * Can toggle if xml:base should be added to saved SVG. + * Can 'pretty print' saved XML for readability. + * ExtensibleSVGDOMImplementation no longer exists, + the SVGDOMImplementation is now extensible. There is a + new baseclass ExtensibleDOMImplementation that provides + extension capabilities to any DOMImplementation subclass. + As a result the name of the services meta-file has moved to: + 'org.apache.batik.dom.DomExtension' + from: + 'org.apache.batik.dom.svg.DomExtension'. + People with DOM extension will have to update the service file + accordingly. + * ExtensibleDOMImplementation now allows 'extension' elements in + the SVG Namespace (they are always lower priority than 'buit ins'). + * When a new Document is loaded a new BridgeContext is created for it. + As a result each document now get's it's own CSS engine. + * ttf2svg now supports 'auto ranging' so it looks at the font + to decide what to output. + * DOM will now detect when the child passed to insert/remove + * AbstractParentNode will now throw a DOM Hierarchy exception + if you try to append a node as a child of it's self (PR 34030) + * Anti-aliased clips (hqClip patch). This can be disabled by setting + the transcoding hint to vector or print (so content doesn't get + rasterized). PR 29110. + * Control of tiled image rendering based on rendering hint. + Using this hint may greatly increase the amount of memory used. + * The Marker interface now has a 'getCharIndex()' method to + get the index of the character the Mark is associated with. + node is not the child of the node insert/remove is called on. + * DrawImage now defaults color model to sRGB_Unpre if the destination + doesn't include alpha. + * The pattern element now shares one rendering tree across all + references. + * Some improvements for Kerning in SVG Font (faster) + * Arabic diacritics are now positioned relative to the right edge + of the base glyph. Bug 28429 + * Basic DocumentType implementation, if present DOMUtilities will + now emit a proper doctype specification + * GVT Tree walker can now be given any node in the GVT tree and it + walk just that subtree. + * Many places now use getResource as Stream instead of Resource + bundles where localization is not wanted/needed. + * Tweaked UpdateManager repaint scheduling alg. + It now tracks when the rendering goes 'out of date' + with the document and runs runnables until it is out of + them or MIN_REPAINT_TIME is exceeded. + * Arc2D now translated to path with elliptical arc commands + in SVGGraphics2D interface. + * JSVGScrollPane now uses bbox of geometry if no viewBox is provided. + * Refactored the text and flow bridges so make things cleaner. + * Implemented textLength to return the value of + getComputedTextLength when the textLength attribute is not + set. + * Potentially large optimization in BBox generation + * The DOM tree viewer now has an option to hide text nodes that + only contain whitespace. + * The DOM tree viewer now includes the id of an element in the + tree view if it has one. + * Improvements to empty bounds handling, should decrease update areas. + * GVT Render requests are now compressed. This helps when doing + live resize of large documents. + * Some refactoring/restructuring of svggen.XmlWriter to potentially + make it a pretty printing DOM serializer. + * Latest pdf-transcoder from FOP which supports '-dpi' switch. + * ScrollPane now should do a better job of fitting document w/o + scrollbars + * title and desc changes are now dynamically tracked. + * ScriptFactorys now loaded via Services interface. + * Made the JDK image loading Mediatracker static + (so others could use it easier). + * ParsedURL now uses the current Batik version as it's default + UserAgent + * Rationalized Text Selection code. Copy to clipboard is now done + by JGVTComponent only if 'unix style' text selection is requested + (default). + +4. Bug Fixes: + + * Fixed all known memory leaks with loading images. + * Changing documents in JSVGScrollPane now works properly. + * Fixed a small memory leak when changing xlink:href on a + use referencing a local element. + * No longer uses Thread.interrupt. On some JVM's this can confuse the + class loader. + * Adding elements in the 'null' namespace nolonger causes a NPE exception. + * Fixed colorspace error in ColorMatrixRed. + * Line element no longer has a fill associated with it. + * Fixed bug #29416 - problem with empty quotes in CSS. + * Fixed bug #34210 - element selectors are now case sensitive + * Index out of bounds error fixed in linear gradient. + * AOI problem in PrintTranscoder now fixed. + * Null Pointer exception when PrintingTranscoding documents + using SVG fonts is fixed (the BridgeContext was being + disposed of too early). + * PrintTranscoder now uses UserAgent to report exceptions + rather than silently swallowing them. + * Fixed some minor bugs in the GlyphLayout code for flow regions. + * Very minor tweaks in JSVGScrollPane. + * Applied patch 28188, fixed tooltip text & title text, thanks Glen + * Applied patch 28487, fixed enabled/disabled state for + toolbar buttons, thanks Glen + * Fixed bug in text selection (programatically selected text wouldn't + clear properly. + * Fixed bug 23035 - Xlink attributes initialized with wrong values. + * Fixed Bug 28785 - 'a' element not clickable with namespace prefix. + * Bug 30584 - Concurrent Modification believed fixed (couldn't get + test case to fail after fix). + * Bug 29891 - Rasterizer problem if w/h == viewBox w/h + * No more 'flicker' when panning a dynamic document. + * CmapFormat4 now clips charCode 0->65534. + * All Object.wait calls are now in while loops to prevent spurious wakeups. + * DOM keypress events will now be generated for so called + Java 'action' keyEvents (previously only keydown/up were + generated). + * Fixed a bug in the PNG Encoder for some 1,2 or 4 bit/pixel images. + * Fixed bug in PackBits TIFF files with multiple IFD's + * The 'debug' messages are now synced with GUI messages. Also they + are localizable. + * Tweaked the way we generate paths to avoid a bug + in the Mac OS X Java implemention where a close + followed by a moveto didn't join the path properly. + * Fixed width/height change onload bug in transcoders submitted + by Simon Mieth. Thanks! + * Fixed a bug with CSS shorthand properties not being set by presentation + attributes. + * DOMImplementations now return empty documents if + qualifiedName in createDocument is null (PR 32108) + * Fixed 'flashing' with JSVGScrollPane. + * Fixed PR: 30923. Text children now respect display and + visibility properties (including dynamic changes). + * Fixed visibility update bug reported by George Armhold. + * Fixed visibility bug on image elements. + * getBBox should now work per the specification. + a) fill="none" will still give bbox + b) It is now the tight bounds of the geometry + c) It does not include the stroke anymore. + d) When called on 'undisplayed' elements returns null (not sure + what the spec really says about this). + * Modification of use element's width/height now works. + * Fixed potential interrupted bug in the RunnableQueue class. + * The document loader cache now uses soft references to avoid + being a memory leak. + * Improved the xml:space support. + * textPath no longer supports 'position attributes' on it's self + * textPath now supports progression position attributes provided + by parent/child tspan/text nodes. + * systemLanguage, requiredFeatures, requiredExtensions now all fail + to match when given an empty string (as specified by the SVG + specification). Bug #33242 (thanks Rick Graham). + * Fixed potential synchronization issues in JavaScript intervals. + * Small optimization in Event dispatch. + * Removed debug print from SVGOMAnimatedPreserveAspectRatio.java + * Synchronization fix in SoftReferenceCache. + * SAXParser now includes 'ignorableWhitespace' when building the + DOM tree. I also tweaked the way text and CDATA sections are + created. + * UpdateManager is now always the 'source' of UpdateManagerEvents + previously in some cases it was an inner class. + * Fix for masks when using Alpha Premultiplied (Mac OS X). + * Improved consistency of events from the RunnableQueue. + Calling suspend/resumeExecution should now always generate + a runHandler event (although the events may be "compressed" + so suspend/resume may only generate one resume event). + * Fixed bug in handling kerning elements with multiple glyph entries + in g/u 1or2. + * Removed use of 'getTagName' to use 'getLocalName' to avoid issues with + prefixed svg elements. + * Fixed a mistake in the generation of SVG fonts that include + arabic forms (PR 33733) + * Fixed handling of complex paint types (base types with + fallbacks). + * Fixed CSS SVG DOM interfaces for complex paint types + (see bug 33923). Added new test for same. + * Text Selection events are now generated even when the + done event is not over a graphics node. + * The double '#' bug is gone in the SVG Pretty Printer. PR 33890 + * The worst of the 'extra spaces' problem with the pretty printer + is solved. + * Fixed updates to SVG Font based text (PR 34041) + * Bug fix in NumberParser (thanks dvholten) + * Fixed bug 34115 - CSSStyleDecl doesn't collapse properties. + * JSVGCanvas no longer holds cached viewBox so it responds + properly when viewBox is updated in SVG content. + +5. Misc: + + Documentation updates + JavaDoc will now reference W3 and JDK docs + Updated MAINTAIN file + Splash/startup screen now embed font (a little simpler SVG as well). + Some Rhino improvements. + New Tests for bugs. + + Thanks to everyone on batik-dev/users for reporting problems and + working on finding solutions. + +1.5 -> 1.5.1 +------------ +1. Security: + + A script security issue was reported in the Batik Squiggle + browser. Squiggle uses the Rhino scripting engine and some features + of that engine can be leveraged by malicious scripts to gain access + to otherwise protected resources (like the file system). + + The Batik team has worked with the Rhino team to fix the isssue + that was reported and the Batik 1.5.1 patch release addresses the + issue. + +2. Features: + + Rhino JavaScript Debugger now integrated with Squiggle. + Better line numbers in error messages. + Zachary DelProposto's Scroll pane class is added. Allows for + scrollbars on SVG documents. + Cool solitaire examples in SVG. + +3. Performance fixes: + + Parents who have children added/removed no longer invalidate + their entire area. + When a element is removed or CSS properties changed all next + siblings are not repainted unless CSS rules change them. + First event dispatch is much quicker than the past. + Switched to Xerces 2.5.0 to improve performance of data protocol. + Changes to paint properties on text is now _much_ faster. + When using many objects from an external file the file will only + be loaded/parsed once. + Modifying x/y and some viewBox changes on SVG elements is now much + faster. + Better JPEG embedding in PDF. + +4. Conformance: + Batik now passes all non SMIL-Animation tests from the SVG Working + Group beSuite. + + @font-face CSS property and font-face elements are now compliant + with SVG specification. + + Changes to the 'class' attribute now update rendering tree + correctly. + + selectSubString now implemented. + + Dynamic modification of display, and marker properties supported. + SVG 'a' element respects 'preventDefault' on event object. + Pattern element no longer applies object bounding box transform + if viewBox is specified. + +5. Bugs: + + Fullscreen mode (F11) works again. + getExtentOfChar() returns bbox in text elements coordinate system. + SVGPoint now supports matrixTransform in more cases + clientX/Y now correct when target is a text element. + Bugfix in parsing some TrueType fonts fixed. + Now applies the 'all' media type to all content. + Image transcoders default to 400x400 rather than issuing an error + (consistent with viewer). + The properties opacity/filter/masking/pointer-events now work + on SVG elements. + Clearing text selection now works + Zero width/height image elements now work properly. + BBox info is correct for zero width/height items. + Fills/strokes text when text-rendering is set to geometricPrecision + rather than using drawGlyphVector. + getCssText() returns the relative version of URI's + SVG Graphics2D outputs correct rendering hints for text. + TextNodes returns the correct bounds. + Proper text child set as 'target' of events. + Events handled correctly for documents that reference the same + image multiple times. + Image are displayed as 'broken links' instead of being an error. + FeColorMatrix now respects color-interpolation-filters property. + elem.style.setProperty now works for shorthand properties. + Fixed race condition in JSVGComponent.set[SVG]Document. + Fixed several memory leaks dealing with use element. + Glyph element's 'd' attribute uses inherited winding-rule. + SVG 'style' element no longer generates multiple 'xml:space' attrs. + SAXDocumentFactory now generates only one CData node for each + CData section in source document. + Memory leak with addEventListener and objects that ref event target fixed. + Click events now allow a small amount of 'slop'. + Fixed bug in rendering with Double Buffering. + Clicking on the Canvas no longer clears the system clipboard. + No longer recascades elements in use tree from foreign documents + Now supports CSS properties with the max negative 32bit int value + Now supports more JPEG image types. + No longer throws a Class Cast exception when using named colors + as the fallback for icc-colors + clearTimeout, clearInterval no longer throw exceptions for null + objects. + clipPath now respects clip-rule when using 'use' element. + + Bug PRs: 12536, 23030, 23038, 23079, 23177, 24919, 25251, 25463 + + +1.5beta5 -> 1.5 +--------------- + +1. Features: + + - With JDK 1.4 text-rendering="optimizeSpeed" will render + non-anti-aliased hinted text (for axially aligned text). + + - The pointer-events property is now handled correctly for elements + without fill or stroke paint. + + - Improved stroke accuracy when shape-rendering="geometricPrecision" + + - JSVGComponent.setSVGDocument with 'null' now releases all + heavy resources and makes the Canvas display only Background. + + - Many memory leaks fixed. + + - Transcoders and JSVGComponent will now accept any Document + and convert to a Batik SVG Document if needed. + + - Script interpreters are loaded lazily. This means that unless you + use them (by having event attributes or script elements) you + don't need any script engines. + + Performance Improvements: + + - Image drawing is now 5-10x faster, for most raster images. + + - Significant performance improvement for patterns that are + filtered or have filters applied to them (take Batik70 for + example). + + - AbstractParentNode insertNode, removeNode, replaceNode are + now much faster for Parents with many children. + + + Library changes: + + - Updated to the Rhino 1.5R41 library + + Others: + + - Added control of floating point precision used in SVGGraphics2D + (see the org.apache.batik.svggen.SVGGeneratorContext class) + + - Batik now almost never opens image URL's twice. + + - JSVGComponent/BridgeContext now has three levels of interactivity. + STATIC, INTERACTIVE, DYNAMIC. With increasing memory overhead + and build time requirements. + + - Improved test environment with automated memory leak, performance, + threading and interactivity tests. There are now over 1000 tests + in the regard regression test suite. + + - Window.parseXML now returns a Document when no 'host' + Document provided. + +2. Bugs: + + See: http://nagoya.apache.org/bugzilla for details on each bug. + + - 6526 pointer-events does not work for fill="none" stroke="none" + - 6683 JSVGCanvas - Problem adding to JScrollPane + - 6951 see samples/tests/spec/paints/linearGradientLine.svg + - 8854 Fix feImage implementation according to latest SVG 1.0/1.1 c + - 9981 Improve Documentation on Scripting with Java + - 9994 text-decoration:underline is incorrect with tspan elements. + - 12013 Squiggle renders jagged curves/paths 12079 transcoder.wmf + - 13870 Language Code errors + - 14011 problem using rasterizer with the headless option + - 14673 not-so-pretty text rendering + - 14788 TranscoderInput(XMLReader reader) does not seem to be implem + - 14789 TranscoderInput(Document document) is incorrect + - 15348 SVGGraphics2D should not export scientific notation on CSS p + - 17168 SVGGraphics2D has package level protected on DOMGroupManager + - 17863 API to get Version info + - 17965 SVGGraphics2D adds 'font-size' attribute to 'line' and 'circ + - 18143 Removing attribute using Element.removeAttributeNode doesn't + - 18566 JSVGComponent packs its parent window + - 18640 Problem with setSVGDocument + - 18840 A few issues with the Batik source + - 18841 Problems with imports in Batik source + - 19017 error when attempting SVG to PDF conversion + - 19363 zero width on rect element causes error + - 19392 Bug in "org.apache.batik.dom.util.DOMUtilities.java" + - 19865 Exception rendering linked PNG file. + - 20147 JSVGCanvas doesn't function with JInternalFrame + - 20201 incorrect gAMA chunk for sRGB + - 20331 bug on batik SVG DOM implementation on the SVGPathSegArcAbs + - 20332 bug on batik SVG DOM implementation on the SVGPathSegCurveto + - 20811 A rect disabled because of zero width or height doesn't get + - 21125 XML comment cause css parser to abort parsing + - 21259 Drawing on an SVGGraphics2D and then using JPEGTranscoder pr + - 21352 XML comments inside script elements treated as script code + - 21358 Dynamic Update of content referenced by a <use> does not wor + - 21361 Bug on SVGPaint implementation + - 21362 Bug on CSSStyleDeclaration on URI reference + - 21374 Implement conformant Java Handler code + - Viewer now properly displays w/h x/y locations in + 'viewbox' coordinates. + - Fixed dirty regions for nodes that change size then + position in the rendering tree (where the new position + has a different rendering transform). + - Fixed handling Fragment URL's with colon's in them. + - Batik no longer considers all @font-face rules a syntax error. + Batik now just ignores them. + - Fixed use elements in Documents with no base url. + - Runs of RTL Text now work with JDK 1.4. + Nested embed and bidi-override properties should now work. + - Fixed bug setting viewBox on outermost SVG element as + described in: + http://koala.ilog.fr/batik/mlists/batik-users/archives/msg03513.html + - JSVGComponent/Canvas now repaints when it changes size + (even when no viewBox). + - Modifying zero W/H rect, circle, ellipse now works properly. + - Fixed the handling of kerning attribute. + - JSVGComponent.setSVGDocument with a Document that has been + previously viewed in the Canvas now works + - 'style' and 'script' elements no longer include the contents + of XML Comments (unless inside a CDATA block). + - Fixed a with absolute x/y attributes in non-text + progression direction. + - Fixed JSVGComponent when it's working threads are + interrupted. + - RhinoInterpreter once again binds the Global Object + as 'window' + + +3. Extensions: + + - Updated multiImage element to match WD. + + +4. Documentation: + + - Updated the FAQ with frequent questions on UpdateManager, DOM + updates and visual updates. + + - Updated the implementation status page and the home page. + + +1.5beta4b -> 1.5beta5 +--------------------- + +1. Features: + + Library changes: + + - Xerces 2.3 is now the default parser. The parser can still be controlled + through the org.apache.batik.util.XMLResourceDescriptor class. + + ** NOTE ** + + While the general performance of the Xerces 2.3 parser seems equivalent + to those of the Crimson parser used previously, there is a notable exception + in the handling of long attributes. This makes a very visible difference + for SVG content that uses embeded images through the 'data:' protocol which + can be extremely slow with Xerces 2.3. The bookOfKells.svgz example, which + used the data: protocol for rather long images has been removed from the + distribution as it does not load in a reasonable amount of time when using + Xerces. + + - Rhino version has been updated from 1.5R3 to 1.5R4 allowing to fix + BR #11968 (DOM access functions should return ECMAScript strings). + + - Removed SAX and DOM sources from the Batik project. Now use xml-apis.jar + from xml-commons. + + Others: + + - currentScale/Translate now implemented (get and set). + + - Implemented getScreenCTM, fixed getCTM (SVGLocatable) + + - onzoom, onscroll, onresize events are now implemented. + + - Integrated pdf-transcoder from FOP. + + - Ctrl-K/L work in fullscreen mode. + + - initial support for SVGList ( provided for SVGPointList in + <polygon> and <polyline>, SVGPathSegList in <path>, SVGLengthList + in textual elements, SVGTransformList in graphical elements ) + + - RFE #12735 : added support for dynamic modifications of 'xlink:href' in image element + + - Now skips reading the SVG DTD unless validation + is turned on (improves load times for small docs). + + - glyph-orientation-horizontal now works. + + - linearGradient's can now be anti-aliased (radial gradient + anti-aliasing also improved). + + - PNG Transcoder can now produce 1,2,4 & 8 bit indexed PNG's. + + - rasterizer can now be used in headless mode (JDK 1.4) + + - JPEG files now have X/YDensity set according to -dpi option. + + - Batik Docs now include a dependency graph for the jar files. + + - In ECMAScript, add the ability to pass an Object instead of a + Function to the Window.getURL() method in which case the + operationComplete method is called once the URL is retrieved. + + - SVGUserAgent now controls the default font-family + + - Added max-width and max-height support in the rasterizer infrastructure + (contribution by Henri Ruini, Hen...@no...) + + - Improvements to the WMFTranscoder by Luan O'Caroll + + - Added better error reporting for external scripts: errors now include the uri + of the external scripts in addition to the line number which is convenient + when an SVG file references multiple external scripts. + + - Modified the way SVG public identifiers are mapped to system identifiers. + The resource file now contains the mapping to the correct SVG DTD instead + of only containing the allowed SVG 1.0 system identifiers for a hard + coded DTD. + + - Added support for cursors. + +Bug Fixes: + + - clientX/Y values in MouseEvents are now returned in screen + pixels (it had been the viewBox coordinate system which was + convenient but wrong and problematic for some cases). + + - Changed default extension for TIFF files to '.tif' from '.tiff'. + + - Fixed bugs in screen updating when the size/location of the + root graphics node changed, and when transform on group + changes after bounds on a child. + + - ToolTips no longer 'hang around' under JDK 1.4.1 + + - The JSVGCanvas no longer steals focus and pops forward whenever + the cursor passes over the canvas. + + - The JSVGCanvas will no longer thrown an exception if an SVG + document is set prior to the component's size being set. + + - Text anchor for vertical text. + + - For corrupt/incomplete JPEG images now shows what it can. + + - Fixed bug with Indexed PNG's that have a bKGD chunk. + + - getRelatedTarget fixed for mouseout event. + + - glyph-orientation-horizontal/vertical no longer require a unit + as per the SVG specification. + + - Fixes for 'jar' protocol. + + - Fixed compressed Tiff writing. + + - Missing Glyph's are now rendered correctly. + + - Text selection now works better with altGlyphs. + + - PrintTranscoder no longer scales 'real world' units wrong. + + - Fixed a bug involving the 'use' element with a width/height in + an SVGFont referenced from external documents. + + - Collaboration with Philipe Converset (Qarbon) on an extension to define + margins in filter regions. This is now supported in the Batik namespace. + +2. Bugs: + + 12389 Focus issue in Squiggle's URL text field + 12121 Cursor in URL field disappears + 12168 MarkerShapePainter delivers wrong PaintedArea + 12239 [PATCH] Moved some method local variables into class + 12954 add support for stroke-width:0 + 15162 PNGTranscoder gives error message about TIFF transcoder + 17167 stroke-dashoffset does not support negative length + 13713 <use> element fails when using percentage values x/y coords + 17183 baseline-shift doesn't refer to parent "line-height" + 15063 Version-dependent code in package org.apache.batik.gvt.font + 12736 Allow non-element nodes to be added to g and svg elements. + + - Added Units resolutions to CSS rects + + - 'd' and 'points' can now be empty on <path>, <polygon> and + <polylines> + + - Now support the transform attribute on the <switch> element + + - Fixed class loader delegation bug in RhinoClassLoader + + - Patch from Keiron Liddle fixing PNGTranscoder KEY_INDEXED hint type + issue (was Boolean instead of Integer) + +3. Extensions: + + - Binary distributions now include jar files that can display + extensions. + + - The multImage element can now reference SVG images as well + as raster images. + + - flowText now supports vertical-align. + + - flowText now uses 'flowRegion' and 'rect' to describe flow + areas. + +4. Documentation: + + - Status of Batik implementation of SVG DOM. + + - Diagram showing the various Batik jar files and their relationships. + + +1.5beta4 -> 1.5beta4b +--------------------- + +This is a patch release fixing a bug on linking. + +1.5beta3 -> 1.5beta4 +-------------------- + +1. Features + + - Squiggle Browser: + + - the F11 key lets users enter the full screen mode or exit the + full screen mode if they are already in that mode. + + - the Browser can now handle XML files which contain a stylesheet + declaration referencing an XSL transformation. If that transformation + generates an SVG document, Squiggle will display it. + + By default, this feature is disabled because it requires that + the user either uses the JDK 1.4 (or greater) version (which at + this time is not a requirement for Batik) or that an XSL transformation + engine (such as Xalan) be in the classpath. + + To enable the feature, uncomment the following line (i.e., remove the '#'): + + #org.apache.batik.apps.svgbrowser.XMLInputHandler + + in the: + + resources/META-INF/services/org.apache.batik.apps.svgbrowser.SquiggleInputHandler + + file. + + - Scripting: + + - Added the ability to use an ECMAScript object providing an handleEvent + method for the listener argument of the addEventListener method on DOM objects + (previously only ECMAScript functions were accepted as parameter). [RFE9149] + +2. Bug Fixes + + - Images - bounds/hints now updated correctly when changed via script + - Local refs now work with null Document URL. + - Double buffered rendering now updates correctly on Mac OS X. + - ParseXML no longer assumes doc is SVG. + - Squiggle can now do Http authentication. + - SVG Font bounds fix + - Text layout fix (anchor and textLength) + - Adding/Removing children no longer invalidates entire parent region. + - handling of position attributes (x,y,dx,dy,rotate) on emtpy tspans has been fixed. + - Fixed improper handling on <altGlyphItem> + - Removed unnecessary font matching with <altGlyph> which can be found + - 'stroke-dasharray' now works with units, + - fixed bugs (CSS !important rules, DOM replaceChild on the root element, + SVG paint parsing, CSS percentages). + + +1.5beta2 -> 1.5beta3 +-------------------- + +1. Features: + + - Squiggle Browser: + + - now keeps a history of recently visited URIs + + - offers more control over the security features + + - Enhanced Security Support: + + - downloading of all external resources can now be + controlled through the UserAgent. This includes + scripting (as before) but also <image>, <use>, and + all elements which may reference external resources + (over 15). + + - users security policy now takes precedence over the + application policy. Users can set the java.security.policy + system property when starting a Batik application and it + will take precedence. + + - Interactivity and Scripting Support Improvements: + + - filter, mask, gradients, clip, pattern and marker are now + updated when the geometry of the referencing graphical + element is dynamically changed. + + - implementation of keyboard events (KeyEvents from DOM Level 2 + Working Draft). In the near future, the batik team will + implement the TextEvents from the DOM Level 3 Events module. + + - Newly supported elements (can now be modified by scripts): + <svg>, <image> and <text> element children (such as <tspan>); + + - Support for addition/removal/modification of stylesheets + + - Misc: + + - external scripts can now be gzipped. + + - added getPixelUnitToMillimeter to UserAgent classes + NOTE: the getPixelToMM and getPixelToMillimeter methods will be + removed after 1.5b3 is released! + + - Improvements in the support for the <flowText> extension + + - Added support for attribute/id/adjacent selector and :first-child + dynamic updates, + +2. Bug Fixing: + + - #1075, #4834, #5233, #5347, #5806, #6642, #6683, #7053,#8330, #9740, + #9058, #9067, #9304, #9429, #9520, #9779, #9804, #9272, #9276, + - bug in feColorMatrix + - DOM: getElementByTagName, invalidateElementsByTagName, cloneNode(false) + - mouseout bug on <tspan> fixed + - File->Open dialog bug on JDK 1.4 fixed. + - Memory leak fixes + - ttf2svg now emits kern elements with the proper sign + - MultiImage now respects xml:base + - Fixed mouse location bug + +3. Documentation Update: + + - Many additional links have been added to the Batik documentation + as well as improvements in its structure and content, thanks to + the work of Robert Di Blasi. + +1.5beta1 -> 1.5beta2 +-------------------- + +** Note on the new security support ** + +- Scripts are now run in a sand-box by default for the Batik sample + applications (the Squiggle SVG Browser and the Rasterizer). Users of + the SVG toolkit who what to run scripts securely need to add + security support in their application and may use the work done for + Squiggle as an example + (e.g., see the org.apache.batik.util.ApplicationSecurityEnforcer class). + +- There is a known limitiation: scripts loaded from a 'file:' url + cannot access (i.e., load files) under the same root. This is not + true for scripts loaded from a server (e.g., 'http:' urls). + +1. Features: + + - Scripting support for styling properties: + + - Most of the CSS properties and style attributes can now + be changed dynad:/work/dev/svg/apache/builds/batik-1.5beta3/mically. See: + http://xml.apache.org/batik/supportedProperties.html + + - Added support for style and class attributes dynamic updates + + + - DOM support: + + - Implementation of SVGLocatable including SVGMatrix + + - All class members of type: SVGLength now works on most of the + graphical elements (rect.x.baseVal.value) + + - Implementation of CSS DOM (getStyle, getComputedStyle...) + + + - Events/Interactivity: + - DOMFocusIn, DOMFocusOut and DOMActivate event types are not supported + + + - Security: + + - Secure scripting is now in place. Scripts in ECMAScript or + Java code are run in a sand-box by default. The Batik browser + (called Squiggle), has the following security options: + . secure execution of scripts can be on or off. + . scripts for a given language can be disabled/enabled. + . scripts can be constrained to come from the same origin + as the document referencing them. + In the Squiggle SVG browser, the security options can be set + through the Preferences dialog, in the browser options panel. + + + - Misc: + + - xml:base is now supported for the image element. + + - <flowText> extension element that flows text into multiple boxes. + Trying to track the SVG 1.1 Working Group on this element. + + - getURL, parseXML supported in the Window object. + + + - Testing: + + - Improved test infrastructure. There are new tests for handling + automatic regression testing of scripting features and there are + more tests (801 now) in the regard regression test suite. + + +2. Bug Fixing: + + - Fixed bugs with textPath w/ text-anchor, and textPath w/ multiple + trailing tspan elements. + + - Work around for RenderingHints when Batik Jars loaded multiple times + in the same JVM (through different class loaders). + + - Fixed a bug with X/Y Resolution for Tiff. + + - UIEvents are not dispatched properly on <text> children (<tspan>...) + + - <a> is now supported on <text> element children + +1.1.1 -> 1.5beta1 +----------------- + +** Note on enhanced scripting support ** + +- Support for DOM Core and DOM Events (Mutation events and UI events) + +- Limitations: + - No support for dynamic modification of CSS properties. + In particular, setAttributeNS of presentation attributes + such as 'fill' or 'stroke' or modification of the 'style' + attribute are not supported. + +1. Features: + - Enhanced scripting support: it is now possible to modify + SVG documents through scripting + - Tiff Transcoder now takes FORCE_TRANSPARENT_WHITE hint. + - Tiff Transcoder now writes resolution tags. + - Implementation of SVG 1.1 solidColor element (in Batik extensions) + - Implementation of multiImage element (a Batik extension). + - Event compression mecanism (e.g., concatenates mouseMove events) + +2. Bug Fixing + + - textLength now works in all cases except nested textLengths. + - 'image' element now respects xml:base. + - Renderer now reuses image buffers more often. + - Speed improvements in cases with lots of tspans. + - Filtered Raster Images now _much_ faster. + - Things mostly work with current Mac OS X JVM (still some trouble with + images/filters). + - Applying a ICC Profile no longer messes up alpha channel in some cases. + - PNG Transcoder now always writes sRGB chunk. + - feImage image positioning fix + - <use> bridge fix, + - SVG generator <use> export fix + - +1.1 -> 1.1.1 Release +-------------------- + +1. Bug fixing: + + - dx/x and dy/y now work when combined. + - clip-path now takes transforms into account + - AbstractRable constructors problem fixed. + - Put in workaround for worst of Mac OS X text problems (layout + still isn't 100% correct in most cases). + - Removed code that is no longer needed in GlyphLayout + - Fixed the last text layout issues on Mac OS X (GlyphVector was + returning the metrics for the first char for all chars in the vector. + We now use the difference in defaultGlyphPositions to get the + character advances). + - Fixed JViewerFrame issue with large (width/height) documents. + +2. Improvements + - Text bounds computation is now much faster + +1.1rc4 -> 1.1 Release +---------------------- + +1. Bug Fixing and Improvements + + - Code factorization in parsers. + - Parsers bug fixing. + - Added examples (maps, bookOfKells example, sunRise, mathMetal). + Maps are a contribution of Andreas Neumann, + MathMetal is a contribution of Christophe Held. + - Added default xmlns and xmlns:xlink on root <svg> in generator + - Integrated Ant task contribution from Henri Ruini + - Improved error dialog (now includes details with the error stack trace). + - Printing fix. + - text-anchor fix. + +1.1rc3 -> 1.1rc4 Release +------------------------ + +1. Features: + + - rewrite of rasterizer thanks to Henri Ruini's contribution + - improved image handling strategies in the SVG generator thanks + to Paul Evenblij's contribution. + - 'requiredFeatures', 'requiredExtensions' and 'systemLanguage' on + graphical elements + - anchor on raster images and SVG images now works properly + - anchor inside a SVG image now works properly + - <a> inside <text> or <tspan> is now displayed + - many tests added (transcoder...) + - SVG viewer: added dialog box at start up time while loading classes + - SVG viewer: limited number of files in history + +2. Bug fixing: + + - memory leak fix + - DOM core serialization + - Parsing of CSS comments + - SVG generator fixes (bug 4945 and 4389) + - rasterizer fixes + - text now works with JDK 1.4b3. Remaining issue with + BufferedImages. + +3. Improvements: + + - general performance improvements in the build and rendering + phases of the viewing component (for example float parsing + has been improved). + +1.1rc2 -> 1.1rc3 Release +------------------------ + +1. Features: + - Support for xml:base + - TextSearch dialog is available (with a zoom option) + - Full support for Alternate Stylesheets + - Full support for CSS Media (including a way to define custom media) + - Changed Text Selection UI. (selectable in the preference dialog) + Added Text Selection API to GVT & swing packages + - KeyStroke on the JSVGCanvas (for pan and zoom using keyboard) + - SVG Font: The font lookup now takes into account namespaces + - Provide a way to set the quality of an exported JPEG image + - Printing now uses the CSS print medium + - More complete handling of partial URLs + - Two new extensions solidColor (a single color 'paint server' acts + similar to the gradients and pattern fills/stroke), & paintSwitch + similar to a switch element but children are paint servers instead + of graphical elements. + +2. Bug fixes: + - Fix in gradient element boundary conditions + - Fix and performance improvements in lighting filters + - Fix in PNG encoding for BufferedImage' subimages. + - feDisplacementMap fix (array out of bound exception) + - font lookup now uses namespace properly + - 'enable-background' now work on <svg> element + - zero length on <rect>, <circle> and <ellipse> disable the rendering + - linear gradient with x1=y1=x2=y2 + - printing now supports SVG URI fragment + - Javadoc improvements and clean-up + - Source clean-up + - DOM: getElementsByTagNameNS now works properly + - SVGDOM: huge cleanup of the implementation + (preparation for dynamic features) + - CSS parser bug fix + - Bridge: 'overflow' on SVG <image> should now work properly + - GVT: cleanup the API - GraphicsNodeRenderContext is now obsolete + + +3. Testing + + - Reorganized tests (see samples/tests subdirectory) + - Improved test reporting (i.e., better HTML report) + - Simplified test infrastructure configuration files. + - Lots of new tests (see samples/tests/structure/styling and + samples/tests/spec/structure for examples) and + samples/batikCandy.svg. + + +1.1rc1 -> 1.1rc2 Release +------------------------ + +1. Bug fixes: + + - 'preserveAspectRatio' now works properly on both raster and SVG images + - bug fix with the 'clip' property on <symbol>, <image>, <marker> + - thumbnail bug fix (sometimes the area of interest became hidden) + - filename filter added to the file selection dialog in the svgbrowser when + exporting as PNG and JPG + - Infinite loop removed. Elliptical arc may cause an infinite loop if the end + point of the arc was the same than current point in the <path> datas. + - SVGGraphics2D can now generates SVG Font on demand + +2. Improvements: + + - Added new custom filter extension (look at the samples/extensions/histogramNormalization.svg) + - Added tooltips on <title> and <desc>. + +1.0 -> 1.1rc1 Release +--------------------- + +1. Enhancements: + a. HTTP headers fields (useragent/accepted...) now implemented. + b. Anti-aliased gradients (when color-rendering set to quality). + c. Small patterns are now much faster + d. Ability to flush cached image data. + e. full horizontal and vertical kerning now implemented for SVG fonts + f. added support for orientation and lang <glyph> attributes + g. improved support for Arabic text, includes handling of Arabic shaping + and ligatures for both SVG and system fonts + h. improved text selection + i. improved text rendering speed + +2. Bug fixes: + a. PNG files now use the proper gamma when reading/writing + b. Off by one bug... [truncated message content] |