text-rendering does not behave as documented (#135)
According to the pre-2.4 javadocs, the different text-rendering values had the following effects:
- 'optimizeSpeed':
-
- KEY_RENDERING=VALUE_RENDER_SPEED
- KEY_ANTIALIASING=VALUE_ANTIALIAS_OFF
- KEY_TEXT_ANTIALIASING=VALUE_TEXT_ANTIALIAS_OFF
- KEY_FRACTIONALMETRICS=VALUE_FRACTIONALMETRICS_OFF
- 'optimizeLegibility':
-
- KEY_RENDERING=VALUE_RENDER_QUALITY
- KEY_ANTIALIASING=VALUE_ANTIALIAS_ON
- KEY_TEXT_ANTIALIASING=VALUE_TEXT_ANTIALIAS_ON
- KEY_FRACTIONALMETRICS=VALUE_FRACTIONALMETRICS_OFF
- 'geometricPrecision':
-
- KEY_RENDERING=VALUE_RENDER_QUALITY
- KEY_ANTIALIASING=VALUE_ANTIALIAS_DEFAULT
- KEY_TEXT_ANTIALIASING=VALUE_TEXT_ANTIALIAS_DEFAULT
- KEY_FRACTIONALMETRICS=VALUE_FRACTIONALMETRICS_ON
However that did not match the actual behaviour: In optimizeLegibility, KEY_TEXT_ANTIALIASING was set to VALUE_TEXT_ANTIALIAS_OFF, while geometricPrecision set both KEY_ANTIALIASING and KEY_TEXT_ANTIALIASING to ON.
Now KEY_TEXT_ANTIALIASING is set to VALUE_TEXT_ANTIALIAS_ON in optimizeLegibility, and the javadoc for geometricPrecision was changed to reflect the real behaviour.
css: support smooth and pixelated values in image-rendering property
This is another small step towards web browser interoperability.
See https://www.w3.org/TR/css-images-3/#the-image-rendering
Detail of changes
text-renderingdoes not behave as documented (#135).- css: support
smoothandpixelatedvalues inimage-renderingproperty. - util: avoid race condition in
DoublyIndexedTable. - gvt,util: reduce visibility of fields in
DoublyIndexedTableandAWTGlyphGeometryCache(see #51). - css: make the non-CSS presentational hints Set final and unmodifiable, for performance.
- svgrasterizer: narrow transitivity dependency to
transcoder.apimodule. - FOP-3284: Reduce access rights to temp files. By Simon Steiner (Commit comes from Batik, so Copyright is assigned to the ASF).
- Tests: add a test for BATIK-1027.
- Gradle: support NVD API keys in
dependency-check-gradleplugin. - Add missing SPDX headers.
- Enhance
IMAGE_COMPARISONS.md. - Normalize the contents of the
module-infolicensing header. - Bump year to 2026 in copyright notice.
- Upgrade to Mozilla Rhino 1.7.15.1.
- Upgrade to dependency-check-gradle 12.1.9.