All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
This changelog also contains important changes in dependencies.
- Nested
baseline-shift
support. - (qt-api)
renderToImage
.
baseline-shift
withsub
,super
and percent values calculation.- (qt-api)
render
methods areconst
now. - Marker resolving moved completely to
usvg
. - (usvg) Disable default attributes exporting.
- (usvg) Marker element and attributes. Markers will be resolved just like
use
now.
- (cairo-backend)
font-family
parsing. - (usvg)
filter:none
processing. - (usvg)
text
insidetext
processing. - (svgtypes) Style with comments parsing.
0.5.0 - 2018-01-04
marker
support.- Partial
baseline-shift
support. letter-spacing
support.- (qt-backend)
word-spacing
support. Does not work on the cairo backend. - tools/explorer-thumbnailer
- tools/kde-dolphin-thumbnailer
- Object bounding box calculation.
- Pattern scaling.
- Nested
objectBoundigBox
support. - (usvg)
color
onuse
resolving. - (usvg)
offset
attribute resolving inside thestop
element. - (usvg) Ungrouping of groups with non-inheritable attributes.
- (usvg)
rotate
attribute resolving. - (usvg) Paths without stroke and fill will no longer be removed. Required for a proper bbox resolving.
- (usvg) Coordinates resolving when units are
userSpaceOnUse
. - (usvg) Groups regrouping. Caused an incorrect rendering of
clipPath
that hadfilter
on a child. - (usvg) Style attributes resolving on the root
svg
element. - (usvg)
SmoothCurveTo
andSmoothQuadratic
conversion. - (usvg)
symbol
resolving. - (cairo-backend) Font ascent calculation.
- (qt-backend) Stroking of LineTo specified as CurveTo.
- (svgdom)
stroke-miterlimit
attribute parsing. - (svgdom)
length
andnumber
attribute types parsing. - (svgdom)
offset
attribute parsing. - (svgdom) IRI resolving order when SVG has duplicated ID's.
0.4.0 - 2018-12-13
- (resvg) Initial filters support.
- (resvg) Nested
clipPath
andmask
support. - (resvg) MSVC support.
- (rendersvg)
font-family
,font-size
andlanguages
to args. - (usvg)
systemLanguage
attribute support. - (usvg) Default font family and size is configurable now.
- (c-api)
RESVG_ERROR_PARSING_FAILED
. - (c-api)
font_family
,font_size
andlanguages
toresvg_options
. - (qt-api)
ResvgRenderer::setDevicePixelRatio
.
- (rendersvg) Use
gumdrop
instead ofgetopts
. - (c-api) Qt wrapper is header-only now.
- (cairo-backend) Text layout.
- (cairo-backend) Rendering of a zero length subpath with a square cap.
- (qt-backend) Transform retrieving via Qt bindings.
- (resvg) Recursive SVG images via
image
tag. - (resvg) Bbox calculation of the text with rotate.
- (resvg) Invisible elements processing.
- (qt-api) SVG from QByteArray loading when data is invalid.
- (usvg)
display
attribute processing. - (usvg) Recursive
mask
resolving. - (usvg)
inherit
attribute value resolving. - (svgdom) XML namespaces resolving.
- (rendersvg)
failure
dependency.
0.3.0 - 2018-05-23
- (c-api)
resvg_is_image_empty
. - (c-api)
resvg_error
enum. - (c-api) Qt wrapper.
- (resvg) Advanced text layout support (lists of x, y, dx, dy and rotate).
- (resvg) SVG support for
image
element. - (usvg)
symbol
element support. - (usvg) Nested
svg
elements support. - (usvg) Paint fallback resolving.
- (usvg) Bbox validation for shapes that use painting servers.
- (svgdom) Elements from ENTITY resolving.
- (c-api)
resvg_parse_tree_from_file
,resvg_parse_tree_from_data
resvg_cairo_render_to_image
andresvg_qt_render_to_image
will return an error code now. - (cairo-backend) Use
gdk-pixbuf
crate instead ofimage
. - (resvg)
Render::render_to_image
andRender::render_node_to_image
will returnOption
and notResult
now. - (resvg) New geometry primitives implementation.
- (resvg) Rename
render_*
modules tobackend_
. - (rendersvg) Use
getopts
instead ofclap
to reduce the executable size. - (svgtypes)
StreamExt::parse_iri
andStreamExt::parse_func_iri
will parse not only well-formed data now.
- (qt-backend) Gradient with
objectBoundingBox
rendering. - (qt-backend) Text bounding box detection during the rendering.
- (cairo-backend)
image
element clipping. - (cairo-backend) Layers management.
- (c-api)
resvg_get_node_transform
will return a correct transform now. - (resvg)
text-decoration
thickness. - (resvg)
pattern
scaling. - (resvg)
image
without size rendering. - (usvg) Panic during
visibility
resolving. - (usvg) Gradients with one stop resolving.
- (usvg)
use
attributes resolving. - (usvg)
clipPath
andmask
attributes resolving. - (usvg)
offset
attribute instop
element resolving. - (usvg) Incorrect
font-size
attribute resolving. - (usvg) Gradient stops resolving.
- (usvg)
switch
element resolving. - (svgdom) Mixed
xml:space
processing. - (svgtypes)
Paint::from_span
poor performance.
- (c-api)
resvg_error_msg_destroy
. - (resvg)
parse_rtree_*
methods. Useusvg::Tree::from_
instead. - (resvg)
Error
.
0.2.0 - 2018-04-24
- (svg) Partial
clipPath
support. - (svg) Partial
mask
support. - (svg) Partial
pattern
support. - (svg)
preserveAspectRatio
support. - (svg) Check that an external image is PNG or JPEG.
- (rendersvg) Added
--query-all
and--export-id
arguments to render SVG items by ID. - (rendersvg) Added
--perf
argument for a simple performance stats.
- (resvg) API is completely new.
font-size
attribute inheritance duringuse
resolving.