Accepting request 1288405 from home:urbic:branches:Java:packages
- Update to v2.0.0
* Changes
+ Errors during parsing are now logged with WARNING as their
log level instead of SEVERE.
+ ParsedElement and ParsedDocument have been removed from the
public API. They have been replaced with DomDocument and
DomElement. The DOMProcessor, ResourceLoader, StyleSheet etc.
interfaces have been adjusted accordingly.
+ AttributeNode and AttributeParser have been removed from the
public facing API e.g. they are no longer arguments to the
methods in PaintParser. Attributes can now only be accessed
by their raw string value through
DomElement#attribute(String). The PaintParser can be obtained
through the DomDocument associated to the DomElement.
+ the functionality of ParserProvider has been moved into
LoaderContext. This unifies the places of customisation
points during parsing.
+ SVGNode including all implementations have been removed from
the public API. Use DomElement#tagName() to determine the
type of an element instead.
+ The exposed API of RenderContext has been reduced to
transform related functions, colors and opacity.
+ Graphics2DOutput has been removed from the public API. Use
Output#createForGraphics(Graphics2D) to obtain a ready to be
used configured instance.
* New API:
+ LoaderContext has been extended to support the customisation
previously available through ParserProvider.
+ SVGDocument#load(XMLInput, URI, LoaderContext) has been added
to support loading from non InputStream/URL based sources.
The XMLInput input classes has the method
XMLInput#createReader returning an XMLEventReader.
* The following classes have been renamed:
+ UIFuture has been renamed to ResourceSupplier.
+ AnimationPeriod has been renamed to Animation.
+ All occurrences of Provider<T> have been replaced with
Supplier<T> from the JDK.
* The following API has been removed:
+ The asynchronous implementation of UIFuture.
+ ParserProvider#createPostProcessor() has been removed.
+ ParserProvider has been removed. Its functionality has been
merged into LoaderContext.
* The following deprecated methods have been removed:
+ SVGDocument#render(JComponent, Graphics2D, ViewBox).
~ Use render(Component, Graphics2D, ViewBox) instead.
+ SVGLoader#SVGDocument load(InputStream),
SVGLoader#load(InputStream, ParserProvider),
SVGLoader#load(InputStream, ParserProvider, ResourceLoader)
~ Use SVGLoader#load(InputStream, URI, LoaderContext) instead.
+ The NullPlatformSupport constructor.
~ Use NullPlatformSupport.INSTANCE instead.
All other previously deprecated functions are in classes which
have been removed from the public API completely.
- Update to v1.7.2
* Changes
+ Fix broken animations
- Update to v1.7.1
Important: The last release erroneously contained byte code
incompatible with Java versions before Java 21 if animations are
used. This release fixes this and makes the library again
compatible with Java 8.
* Changes
+ Correctness improvements for text-anchor #110 7d1fb8f
+ The default resource policy now allows for embedded data uri
images. 8ab4aae
+ Percentage values in startOffset of a <textPath> now properly
resolve with respect to the length of the paths. Some
scenarios are still unsupported e.g. negative values and
values larger than the path length. #115 eef2211
+ Fix incorrect inheritance behaviour of the dominant-baseline
property #116 be43583
+ Font family names within single or double quotes are now
correctly resolved. #117 5614b6c
+ Fix exception when radial gradients have a non-positive
radius #118 e953115
+ Fix exception when the last two gradients stops have have the
same offset value #118 e953115
+ Fix exception when gradients have only one specified stop
#118 55261f7
- Update to v1.7.0
Warning: This release erroneously contains byte code incompatible
with Java versions before Java 21. This has been fixed in JSVG
version 1.7.1.
* Changes
+ Implementors of Output now have more control over how text
gets rendered. The can opt to receive information about the
text being laid out by returning a custom TextOutput in
Output#textOutput.
+ ExternalResourcePolicy now applies to all resources not only
referenced SVG elements.
+ Support for multi-char codepoints such as "𝄞".
+ Rudimentary support for rendering emoji. This feature does
not work on every operating system and JDK version.
+ Support for more units:
~ rem
~ ch
~ Q
~ vw,vh,vmin,vmax
~ vi,vb
+ ParsedElement now has access to the document it belongs to
(via ParsedElement#document) and to its parent element (via
ParsedElement#parent).
+ The rx and ry attributes are now correctly applied in cases.
+ Fixed rendering of paths with repeated cubic/quadratic bezier
commands.
+ Fixed usage of repeated values in the paint-order attribute.
+ stroke-opacity and fill-opacity now correctly don't
accumulate to child elements.
+ Percentages in stroke related properties now correctly refer
to the diagonal length of the current viewport.
+ Fixed bounds computation of empty groups for which a
transform is specified.
+ Support for the transform-box property. (by @Cu3PO42 in #99)
+ Prevent DOS attacks through exponential leaf nodes using use
elements. The limits for this can be configured setting
custom DocumentLimits in the LoaderContext.
+ JSVG now provides OSGi metadata (by @HannesWell in #107)
+ Preview support for animations. Not many properties outside
of geometry properties are animatable. Only basic animation
timings are implemented.
* Deprecations
See documentation for replacements.
+ LoadHelper(AttributeParser, ResourceLoader)
+ SVGDocument#render(JComponent, Graphics2D, ViewBox)
+ AttributeNode#getPercentage(String, float)
+ SVGDocumentBuilder(ParserProvider, ResourceLoader,
NodeSupplier)
+ SVGLoader#load(InputStream)
+ SVGLoader#load(InputStream, ParserProvider)
+ SVGLoader#load(InputStream, ParserProvider, ResourceLoader)
- Add the OSGi metadata to the manifest
OBS-URL: https://build.opensuse.org/request/show/1288405
OBS-URL: https://build.opensuse.org/package/show/Java:packages/jsvg?expand=0&rev=9
2025-06-25 04:54:11 +00:00
|
|
|
-------------------------------------------------------------------
|
|
|
|
Tue Jun 24 21:47:04 UTC 2025 - Anton Shvetz <shvetz.anton@gmail.com>
|
|
|
|
|
|
|
|
- Update to v2.0.0
|
|
|
|
* Changes
|
|
|
|
+ Errors during parsing are now logged with WARNING as their
|
|
|
|
log level instead of SEVERE.
|
|
|
|
+ ParsedElement and ParsedDocument have been removed from the
|
|
|
|
public API. They have been replaced with DomDocument and
|
|
|
|
DomElement. The DOMProcessor, ResourceLoader, StyleSheet etc.
|
|
|
|
interfaces have been adjusted accordingly.
|
|
|
|
+ AttributeNode and AttributeParser have been removed from the
|
|
|
|
public facing API e.g. they are no longer arguments to the
|
|
|
|
methods in PaintParser. Attributes can now only be accessed
|
|
|
|
by their raw string value through
|
|
|
|
DomElement#attribute(String). The PaintParser can be obtained
|
|
|
|
through the DomDocument associated to the DomElement.
|
|
|
|
+ the functionality of ParserProvider has been moved into
|
|
|
|
LoaderContext. This unifies the places of customisation
|
|
|
|
points during parsing.
|
|
|
|
+ SVGNode including all implementations have been removed from
|
|
|
|
the public API. Use DomElement#tagName() to determine the
|
|
|
|
type of an element instead.
|
|
|
|
+ The exposed API of RenderContext has been reduced to
|
|
|
|
transform related functions, colors and opacity.
|
|
|
|
+ Graphics2DOutput has been removed from the public API. Use
|
|
|
|
Output#createForGraphics(Graphics2D) to obtain a ready to be
|
|
|
|
used configured instance.
|
|
|
|
* New API:
|
|
|
|
+ LoaderContext has been extended to support the customisation
|
|
|
|
previously available through ParserProvider.
|
|
|
|
+ SVGDocument#load(XMLInput, URI, LoaderContext) has been added
|
|
|
|
to support loading from non InputStream/URL based sources.
|
|
|
|
The XMLInput input classes has the method
|
|
|
|
XMLInput#createReader returning an XMLEventReader.
|
|
|
|
* The following classes have been renamed:
|
|
|
|
+ UIFuture has been renamed to ResourceSupplier.
|
|
|
|
+ AnimationPeriod has been renamed to Animation.
|
|
|
|
+ All occurrences of Provider<T> have been replaced with
|
|
|
|
Supplier<T> from the JDK.
|
|
|
|
* The following API has been removed:
|
|
|
|
+ The asynchronous implementation of UIFuture.
|
|
|
|
+ ParserProvider#createPostProcessor() has been removed.
|
|
|
|
+ ParserProvider has been removed. Its functionality has been
|
|
|
|
merged into LoaderContext.
|
|
|
|
* The following deprecated methods have been removed:
|
|
|
|
+ SVGDocument#render(JComponent, Graphics2D, ViewBox).
|
|
|
|
~ Use render(Component, Graphics2D, ViewBox) instead.
|
|
|
|
+ SVGLoader#SVGDocument load(InputStream),
|
|
|
|
SVGLoader#load(InputStream, ParserProvider),
|
|
|
|
SVGLoader#load(InputStream, ParserProvider, ResourceLoader)
|
|
|
|
~ Use SVGLoader#load(InputStream, URI, LoaderContext) instead.
|
|
|
|
+ The NullPlatformSupport constructor.
|
|
|
|
~ Use NullPlatformSupport.INSTANCE instead.
|
|
|
|
All other previously deprecated functions are in classes which
|
|
|
|
have been removed from the public API completely.
|
|
|
|
- Update to v1.7.2
|
|
|
|
* Changes
|
|
|
|
+ Fix broken animations
|
|
|
|
- Update to v1.7.1
|
|
|
|
Important: The last release erroneously contained byte code
|
|
|
|
incompatible with Java versions before Java 21 if animations are
|
|
|
|
used. This release fixes this and makes the library again
|
|
|
|
compatible with Java 8.
|
|
|
|
* Changes
|
|
|
|
+ Correctness improvements for text-anchor #110 7d1fb8f
|
|
|
|
+ The default resource policy now allows for embedded data uri
|
|
|
|
images. 8ab4aae
|
|
|
|
+ Percentage values in startOffset of a <textPath> now properly
|
|
|
|
resolve with respect to the length of the paths. Some
|
|
|
|
scenarios are still unsupported e.g. negative values and
|
|
|
|
values larger than the path length. #115 eef2211
|
|
|
|
+ Fix incorrect inheritance behaviour of the dominant-baseline
|
|
|
|
property #116 be43583
|
|
|
|
+ Font family names within single or double quotes are now
|
|
|
|
correctly resolved. #117 5614b6c
|
|
|
|
+ Fix exception when radial gradients have a non-positive
|
|
|
|
radius #118 e953115
|
|
|
|
+ Fix exception when the last two gradients stops have have the
|
|
|
|
same offset value #118 e953115
|
|
|
|
+ Fix exception when gradients have only one specified stop
|
|
|
|
#118 55261f7
|
|
|
|
- Update to v1.7.0
|
|
|
|
Warning: This release erroneously contains byte code incompatible
|
|
|
|
with Java versions before Java 21. This has been fixed in JSVG
|
|
|
|
version 1.7.1.
|
|
|
|
* Changes
|
|
|
|
+ Implementors of Output now have more control over how text
|
|
|
|
gets rendered. The can opt to receive information about the
|
|
|
|
text being laid out by returning a custom TextOutput in
|
|
|
|
Output#textOutput.
|
|
|
|
+ ExternalResourcePolicy now applies to all resources not only
|
|
|
|
referenced SVG elements.
|
|
|
|
+ Support for multi-char codepoints such as "𝄞".
|
|
|
|
+ Rudimentary support for rendering emoji. This feature does
|
|
|
|
not work on every operating system and JDK version.
|
|
|
|
+ Support for more units:
|
|
|
|
~ rem
|
|
|
|
~ ch
|
|
|
|
~ Q
|
|
|
|
~ vw,vh,vmin,vmax
|
|
|
|
~ vi,vb
|
|
|
|
+ ParsedElement now has access to the document it belongs to
|
|
|
|
(via ParsedElement#document) and to its parent element (via
|
|
|
|
ParsedElement#parent).
|
|
|
|
+ The rx and ry attributes are now correctly applied in cases.
|
|
|
|
+ Fixed rendering of paths with repeated cubic/quadratic bezier
|
|
|
|
commands.
|
|
|
|
+ Fixed usage of repeated values in the paint-order attribute.
|
|
|
|
+ stroke-opacity and fill-opacity now correctly don't
|
|
|
|
accumulate to child elements.
|
|
|
|
+ Percentages in stroke related properties now correctly refer
|
|
|
|
to the diagonal length of the current viewport.
|
|
|
|
+ Fixed bounds computation of empty groups for which a
|
|
|
|
transform is specified.
|
|
|
|
+ Support for the transform-box property. (by @Cu3PO42 in #99)
|
|
|
|
+ Prevent DOS attacks through exponential leaf nodes using use
|
|
|
|
elements. The limits for this can be configured setting
|
|
|
|
custom DocumentLimits in the LoaderContext.
|
|
|
|
+ JSVG now provides OSGi metadata (by @HannesWell in #107)
|
|
|
|
+ Preview support for animations. Not many properties outside
|
|
|
|
of geometry properties are animatable. Only basic animation
|
|
|
|
timings are implemented.
|
|
|
|
* Deprecations
|
|
|
|
See documentation for replacements.
|
|
|
|
+ LoadHelper(AttributeParser, ResourceLoader)
|
|
|
|
+ SVGDocument#render(JComponent, Graphics2D, ViewBox)
|
|
|
|
+ AttributeNode#getPercentage(String, float)
|
|
|
|
+ SVGDocumentBuilder(ParserProvider, ResourceLoader,
|
|
|
|
NodeSupplier)
|
|
|
|
+ SVGLoader#load(InputStream)
|
|
|
|
+ SVGLoader#load(InputStream, ParserProvider)
|
|
|
|
+ SVGLoader#load(InputStream, ParserProvider, ResourceLoader)
|
|
|
|
- Add the OSGi metadata to the manifest
|
|
|
|
|
2025-03-27 21:22:31 +00:00
|
|
|
-------------------------------------------------------------------
|
|
|
|
Thu Mar 27 21:21:25 UTC 2025 - Fridrich Strba <fstrba@suse.com>
|
|
|
|
|
|
|
|
- Fix build with both xmvn-mojo:javadoc and javadoc:aggregate
|
|
|
|
|
2024-09-04 10:50:41 +00:00
|
|
|
-------------------------------------------------------------------
|
|
|
|
Tue Sep 3 13:37:26 UTC 2024 - Anton Shvetz <shvetz.anton@gmail.com>
|
|
|
|
|
|
|
|
- Update to v1.6.1
|
|
|
|
* Changes:
|
|
|
|
+ NullPlatformSupport is now a singleton. Its constructor has
|
|
|
|
been deprecated. Use NullPlatformSupport.INSTANCE instead.
|
|
|
|
* Fixed issues:
|
|
|
|
+ Parsing loop if paint-order is invalid (some cases) or normal
|
|
|
|
#88
|
|
|
|
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
Thu Aug 1 23:22:00 UTC 2024 - Anton Shvetz <shvetz.anton@gmail.com>
|
|
|
|
|
|
|
|
- Update to v1.6.0
|
|
|
|
* Changes:
|
|
|
|
+ Support for feDropShadow
|
|
|
|
+ Added experimental support for resolving elements in href
|
|
|
|
from external documents through
|
|
|
|
LoaderContext.builder().elementLoader(
|
|
|
|
ElementLoader.create(ExternalDocumentPolicy.ALLOW_RELATIVE)
|
|
|
|
)
|
|
|
|
passed to SVGLoader.
|
|
|
|
By default this is disabled.
|
|
|
|
* Fixed issues:
|
|
|
|
+ Filter effects outside the geometry box get clipped by mask
|
|
|
|
#84
|
|
|
|
+ paint-order doesn't get inherited #83
|
|
|
|
|
2024-06-17 05:48:17 +00:00
|
|
|
-------------------------------------------------------------------
|
|
|
|
Sun Jun 16 12:25:05 UTC 2024 - Anton Shvetz <shvetz.anton@gmail.com>
|
|
|
|
|
2024-06-17 05:53:21 +00:00
|
|
|
- JPMS: package module descriptor
|
2024-06-17 05:48:17 +00:00
|
|
|
|
2024-06-14 16:03:05 +00:00
|
|
|
-------------------------------------------------------------------
|
|
|
|
Thu Jun 13 17:02:22 UTC 2024 - Anton Shvetz <shvetz.anton@gmail.com>
|
|
|
|
|
|
|
|
- Update to v1.5.0
|
|
|
|
* Changes:
|
|
|
|
+ Support for filters on root <svg> nodes #61
|
|
|
|
+ stroke-dasharray is now inherited
|
|
|
|
+ SVGDocument now exposes its ViewBox through
|
|
|
|
SVGDocument.viewbox() #69
|
|
|
|
+ Support for the color-interpolation-filters property. In
|
|
|
|
particular filters are now computed in the correct
|
|
|
|
colorspace.
|
|
|
|
+ <feComponentTransfor> together with <feFunc[ARGB]> is now
|
|
|
|
supported.
|
|
|
|
+ Introduce SVGRenderingHints.KEY_MASK_CLIP_RENDERING and
|
|
|
|
SVGRenderingHints.VALUE_MASK_CLIP_RENDERING_ACCURACY to
|
|
|
|
ensure proper mask/clipPath isolation to fix #74 if desired.
|
|
|
|
+ Support rendering to AWT components #77.
|
|
|
|
+ Added SVGDocument.renderWithPlatform(PlatformSupport,
|
|
|
|
Graphics2D, ViewBox)
|
|
|
|
* Fixed issues:
|
|
|
|
+ Improper sub pixel alignment when using masks or filters #62
|
|
|
|
+ Filters are now clipped to filter primitive regions #70
|
|
|
|
+ General correctness improvements for filters in particular
|
|
|
|
<feBlend> and alpha compositing.
|
|
|
|
+ Invalid paths now render up to the point where they are valid
|
|
|
|
#68
|
|
|
|
+ Unitless values for mask bounds are now correctly interpreted
|
|
|
|
as percentages #75
|
|
|
|
+ Fix scenarios where masks are applied incorrectly #74
|
|
|
|
* Deprecations
|
|
|
|
+ SVGDocument.render(JComponent, Graphics2D, ViewBox bounds).
|
|
|
|
Replaced by SVGDocument.render(Component, Graphics2D, ViewBox
|
|
|
|
bounds)
|
|
|
|
+ JComponentPlatformSupport replaced by
|
|
|
|
AwtComponentPlatformSupport
|
|
|
|
|
2024-05-28 10:24:23 +00:00
|
|
|
-------------------------------------------------------------------
|
|
|
|
Thu May 23 17:55:51 UTC 2024 - Anton Shvetz <shvetz.anton@gmail.com>
|
|
|
|
|
|
|
|
- Update to v1.4.0
|
|
|
|
* Changes:
|
|
|
|
+ The shape of a svg file can now be computed using
|
|
|
|
SVGDocument.computeShape().
|
|
|
|
+ Implemented (experimental) soft clipping for <clipPath>. It
|
|
|
|
can be enabled by setting the
|
|
|
|
SVGRenderingsHints.KEY_SOFT_CLIPPING to
|
|
|
|
SVGRenderingHints.VALUE_SOFT_CLIPPING_ON on the Graphics2D
|
|
|
|
instance.
|
|
|
|
|
2023-12-03 11:15:00 +00:00
|
|
|
-------------------------------------------------------------------
|
|
|
|
Fri Dec 1 00:22:44 UTC 2023 - Anton Shvetz <shvetz.anton@gmail.com>
|
|
|
|
|
|
|
|
- Update to v1.3.0
|
|
|
|
* Changes:
|
|
|
|
+ Support for svg resources in <img> tags. #53
|
|
|
|
+ Comments in css declarations (inside <style> tags) are now
|
|
|
|
supported.
|
|
|
|
+ If an <img> tag isn't able to load the resource a replacement
|
|
|
|
"missing image" visual is shown.
|
|
|
|
+ A small move towards supporting proper xml namespacing
|
|
|
|
* Fixed issues:
|
|
|
|
+ The x and y properties on top level svg are now ignored as
|
|
|
|
per the specification.
|
|
|
|
+ Incorrect size conversion for coordinates in ellipses and
|
|
|
|
circles.
|
|
|
|
+ Numbers not separated by space e.g 5-4 i.e. 5 and -4 are now
|
|
|
|
properly parsed in transform specifiers.
|
|
|
|
|
2023-11-02 17:08:52 +00:00
|
|
|
-------------------------------------------------------------------
|
|
|
|
Thu Oct 26 16:09:07 UTC 2023 - Anton Shvetz <shvetz.anton@gmail.com>
|
|
|
|
|
|
|
|
- Initial packaging with v1.2.0
|