A SVGimageBase can be created either from an SVG file or from an in-memory buffer containing the SVG XML code. The result is a collection of cubic bezier shapes, with fill, stroke, gradients, paths and other information.
This class is a Cython-based wrapper around the nanosvg NSVGimage
structure,
providing just the basic wrapped functionality from nanosvg. Please see the
wx.svg.SVGimage
class for a derived implementation that adds
functionality for integrating with wxPython.
Loads an SVG image from a bytes object. |
|
Loads an SVG image from a file. |
|
Renders the SVG image to a |
|
Renders the SVG image to an existing buffer as a series of RGBA values. |
Returns the height of the SVG image |
|
A generator that iterates over the |
|
Returns the width of the SVG image |
SVGimageBase
(object)¶A SVGimageBase can be created either from an SVG file or from an in-memory buffer containing the SVG XML code. The result is a collection of cubic bezier shapes, with fill, stroke, gradients, paths and other information.
This class is a Cython-based wrapper around the nanosvg NSVGimage
structure,
providing just the basic wrapped functionality from nanosvg. Please see the
wx.svg.SVGimage
class for a derived implementation that adds
functionality for integrating with wxPython.
CreateFromBytes
(type cls, bytes buffer, str units='px', float dpi=96, bool do_copy=True)¶Loads an SVG image from a bytes object.
buffer (bytes) – object containing the SVG data
units (str) – One of: ‘px’, ‘pt’, ‘pc’ ‘mm’, ‘cm’, or ‘in’
dpi (float) – controls how the unit conversion is done
do_copy (bool) – indicates if the given bytes object should be
copied to avoid in-place modification. This should be set to True
if the given buffer object may ever be reused in any capacity.
If the given buffer will only be used once, and the cost of copying
it is problematic, then do_copy can be set to False.
An instance of cls
(usually a SVGimage
)
CreateFromFile
(type cls, str filename, str units='px', float dpi=96)¶Loads an SVG image from a file.
filename (str) – Name of the file to load the SVG image from
units (str) – One of: ‘px’, ‘pt’, ‘pc’ ‘mm’, ‘cm’, or ‘in’
dpi (float) – controls how the unit conversion is done
An instance of cls
(usually a SVGimage
)
Rasterize
(self, float tx=0.0, float ty=0.0, float scale=1.0, int width=-1, int height=-1, int stride=-1) → bytes¶Renders the SVG image to a bytes
object as a series of RGBA values.
tx (float) – Image horizontal offset (applied after scaling)
ty (float) – Image vertical offset (applied after scaling)
scale (float) – Image scale
width (int) – width of the image to render, defaults to width from the SVG file
height (int) – height of the image to render, defaults to height from the SVG file
stride (int) – number of bytes per scan line in the destination buffer, typically width * 4
A bytearray object containing the raw RGBA pixel color values
RasterizeToBuffer
(self, buf, float tx=0.0, float ty=0.0, float scale=1.0, int width=-1, int height=-1, int stride=-1) → bytes¶Renders the SVG image to an existing buffer as a series of RGBA values.
The buffer object must support the Python buffer-protocol, be writable,
and be at least width * height * 4
bytes long. Possibilities include
bytearrays, memoryviews, numpy arrays, etc.
buf – An object supporting the buffer protocol where the RGBA bytes will be written
tx (float) – Image horizontal offset (applied after scaling)
ty (float) – Image vertical offset (applied after scaling)
scale (float) – Image scale
width (int) – width of the image to render, defaults to width from the SVG file
height (int) – height of the image to render, defaults to height from the SVG file
stride (int) – number of bytes per scan line in the destination buffer, typically width * 4
height
¶Returns the height of the SVG image
width
¶Returns the width of the SVG image