css4j / echosvg

SVG implementation in the Java™ Language, fork of Apache Batik, supporting level 4 selectors and colors.
Apache License 2.0
39 stars 2 forks source link

Release 1.1 #110

Closed carlosame closed 1 month ago

carlosame commented 1 month ago

Version 1.1 will be released soon and this issue is mainly about the release notes. If something is missing or unclear please comment here.

Highlights

Security fixes

Two security vulnerabilities in the util module were fixed:


Adapt to new module name of xmlgraphics-commons

The next version of the xmlgraphics-commons dependency will use the org.apache.xmlgraphics.commons module name, different to the one that was being used in EchoSVG until now (based on the Maven filename-based module name).

If you experience any difficulty due to the change, please use a plugin like Moditect for Maven or extra-java-module-info for Gradle. Or you could wait until the next version of xmlgraphics-commons is released and then set an explicit dependency.


More SVG2 compatibility


PNG codecs now support ICC color profiles

The native PNG codec and the ImageIO WriteAdapter now support color profiles automatically.


Color profiles in SVG Generator, in colors and embedded PNG images

See https://github.com/css4j/echosvg/wiki/SVG-Generator


Configurable compression level for embedded PNG images in the SVG Generator

See SVGGeneratorContext.setCompressionLevel().


New rendering hints in the PNG transcoder

Rendering hints KEY_KEYWORD_TEXT, KEY_INTERNATIONAL_TEXT and KEY_COMPRESSED_TEXT allow embedding textual information (like copyright, author, description, etc) in rendered PNG images. And KEY_COMPRESSION_LEVEL sets the compression level used in the PNG encoding (the default native encoder uses 9 by default, which is excessive for some use cases).

All of these hints work with both the native and the ImageIO adapters.


Per-module Fat-jars

If you manage your classpath manually and only require a specific module, get a fat-jar specific for your use case.

See https://github.com/css4j/echosvg/wiki/Uber-Jar


Detail of changes