Menu

fxsvgimage / Blog: Recent posts

Version 1.7.1 released

Fix #94: SVGStyleBuilder cuts off last character of value when semicolon is missing
Fix #95: Stylesheets specified by a link element are not taken into account
Fix #96: The text-anchor attribute is handled incorrectly, which could possibly lead to a NPE
Fix #97: Nested svg are not handled
Fix #56: Large SVG which fails
Fix #98: Add the value of the zoom factor in the browser

Posted by Hervé Girod 6 days ago

Version 1.7 released

Fix #90: Documentation/Behavior Mismatch: scale(double) returns a new instance instead of initial object. Now the scale do not create a new image, but change the scale of the initial image. To create a new image, use the scale(double, true), or clone the image

Posted by Hervé Girod 2026-04-19

Version 1.6 released

  • Add a css library, using SAC and cssParser
  • Fix #85: Add support for units in shapes lengths and positions
  • Fix #86: Add support for defining a background for the images in the SVG Browser
  • Fix #88: Support xml:space specification
Posted by Hervé Girod 2026-03-31

Version 1.5 released

  • Fix #68: Implicit line-to commands in SVG paths are not parsed correctly since version 1.4
  • Fix #75: Unable to load Material Symbols icons
  • Fix #78: The image size does not match the image width/height attributes
  • Use docJGenerator 1.6.16
Posted by Hervé Girod 2026-02-15

Version 1.4 released

  • Fix #61: The gradients which are not defined in a defs node are not taken into account
  • Fix #62, #63: Marker marker-mid attribute of svg path element is not taken into account
Posted by Hervé Girod 2025-09-03

Version 1.3 released

  • Fix #10: Loader params work on some SVG but another, it doesn't. The problem was due to paths which were not scaled correctly
  • Fix #53: Implement a drag gesture in the browser
  • Fix #18: style elements are order-sensitive
  • Fix #54: The parser does not take into account multiple style declarations
  • Fix #55: The styles by element types names are not taken into account
  • Fix #21: Multiple styles don't get applied correctly
  • Fix #34: Decimal font sizes don't work on the 0.0-1.0 range
  • Fix #51: Failed to render text with tspan
  • Fix #57: Add a refresh option for the browser
Posted by Hervé Girod 2025-05-05

Version 1.2 released

  • Use docJGenerator 1.6.10
  • Use groovy 4.0.26 (only used for tests, the binaries have no dependencies
  • Move the Viewport a ViewBox classes in the org.girod.javafx.svgimage package
  • Fix #47: Add a parameter for the Color of the svg background in the JavaFX to SVG parameters
  • Fix #48: Add a parameter to generate the viewbox in the JavaFX to SVG parameters
  • Fix #49: Add a parameter to not allow the transform on the root of the svg document in the JavaFX to SVG parameters
  • Fix #42: Failed to render text with tspan in some cases
  • Fix #45: Mask not working
  • Fix #37: SVGImage's scaleTo doesn't seem to override svg width height parameters
  • Fix #50: The default LineCap, LineJoin, and miterlimit on Shapes are incorrect
  • Fix #36: Allow to scale on parent element
Posted by Hervé Girod 2025-04-23

Version 1.0b2 released

Support images embedded the svg file as base64
Fix the width and height of the resulting image when writing a Node which could be off by one pixel, when using a scale
Keep the URL or String origin of the SVG in the resulting JavaFX SVGImage

Posted by Hervé Girod 2022-04-10

Version 1.0b1 released

  • Add a converter which is able to convert a JavaFX node tree to a svg file
  • Fix the transformations on nodes which were sometime wrong when using a scale in the LoaderParameters
Posted by Hervé Girod 2022-03-24

Version 0.6.1 released

  • Fix the browser not showing some animations correctly
  • Protect the browser against invalid SVG files
  • Fix the scale transform not working with only one argument
  • Fix the skewX and skewY transforms
  • Support the "none" color
  • Handle the cases where the viewPort position is not at 0,0
  • Add a LoaderParameter property to specify if the viewPort position is taken into account
  • Fix the gradients href parameter only been taken into account if the referenced gradient was defined before the one which referred to it
  • Fix the gradients gradientTransform parameter not taken into account in the majority of cases
  • Handle proportional coordinates for linear gradients
  • Handle width and height specified in % in the svg root
Posted by Hervé Girod 2021-12-07

Version 0.6 released

Support the "preserveAspectRatio" attribute for the svg root element
Allow to load a SVG from a String
Specifies a global configuration for the handling of exceptions during parsing
Fix a lot of problems which appeared when scaling the content at the loader level
Fix the position of the svg content which was not correctly translated if scaled during the loading
Take into account the viewport and the units in the path element
Take into account rotate transforms with only one parameter
Add a parameter to allow to center the resulting svg
Support the visibility attribute
Start support for svg animations: animateTransform, animateMotion, and animate are partially suppported

Posted by Hervé Girod 2021-11-28

Version 0.5.6 released

Support the use element for images and g elements
Support the symbol element
Support the "viewBox", "width", "height", and "preserveAspectRatio" attributes for the symbol element

Posted by Hervé Girod 2021-11-14

Version 0.5.5 released

Support the tspan "dx" and "dy" attributes
Support the "clipPathUnits" attribute for clipPaths elements
Fix the clipPath elements only being taken into account in defs parents
Fix the values for coordinates parsed to a value of zero if having a pattern without an integer part (such as ".5")
Support the use element for basic shapes

Posted by Hervé Girod 2021-11-14

Version 0.5.4 released

Make sure that the snapshot generation class does not emit an exception before the actual generation if Swing is not available
Allow to have both underline and line-through for a text
Support the "transform" attribute for the clipPath element
Support the translateX, translateY, scaleX, and scaleY transformations
Allow to use units in transformations
Allow to use more than one transformation in the "transform" or "gradientTransform" attribute

Posted by Hervé Girod 2021-11-13

Version 0.5.3 released

Add a snapshot method in the SVGImage to simplify the process of writing the content of the result on disk

Posted by Hervé Girod 2021-11-13

Version 0.5.2 released

Fix the SVG browser not included in the distribution

Posted by Hervé Girod 2021-11-13

Version 0.5.1 released

  • Support the "font-style" and "font-weight" attributes for text (also supported in style)
  • Fix the computing of font size when an unit is provided
  • Support the Font characteristics in the style node
  • Support the "oblique" value for the font-style property
  • Fix some styles in the style element which were not correctly parsed
  • Support the "fill-opacity" attribute
  • Support the "text-decoration" attribute
  • Support the "baseline-shift" attribute for tspan elements
  • Support the "rx" and "ry" attributes for rect elements
  • Fix the tspan elements not using the styles from their text parent
  • Fix the tspan elements not correctly positioned if not having a declared position in the SVG document
  • Support percents for the "opacity" and "fill-opacity" attributes
  • Fix the radial gradients
  • Support the spreadMethod argument for gradients
  • Allow urls specifications enclosed with "'" quotes
  • Fix the "clip-path" attribute or style not taken into account for nodes
  • Support text, line, polygon and polyline in the clipPath element
  • Support the fill-rule property for paths
  • Add a SVG browser
Posted by Hervé Girod 2021-11-13
MongoDB Logo MongoDB