Image::LibRSVG - Perl extension for librsvg
use Image::LibRSVG; ## static Methods my $known_formats = Image::LibRSVG->getKnownFormats(); my $formats = Image::LibRSVG->getSupportedFormats(); my $isSupported = Image::LibRSVG->isFormatSupported("tiff"); my $rsvg = new Image::LibRSVG(); $rsvg->convert("my.svg", "my.png" ); $rsvg->convertAtZoom("my.svg", "my.png", 1.5, 1.5 ); $rsvg->convertAtMaxSize("my.svg", "my.png", 200, 300 ); $rsvg->convertAtSize("my.svg", "my.png", 200, 300 ); $rsvg->convertAtZoomWithMax("my.svg", "my.png", 1.5, 1.5, 200, 300 ); $formats = $rsvg->getSupportedFormats(); $isSupported = $rsvg->isFormatSupported("tiff"); $rsvg->loadImage( "my.svg" ); open( SVGFILE, "< my.svg" ); local( $/ ) ; $rsvg->loadImageFromString( <SVGFILE> ); close SVGFILE; $rsvg->saveAs( "my.png" ); $rsvg->saveAs( "my.jpg", "jpeg" ); $rsvg->loadImage( "my.svg", 0, { zoom => [ 1.5, 1.5 ] } ); $rsvg->saveAs( "zoomed.png" ); my $bitmap = $rsvg->getImageBitmap();
This module provides an Perl-Interface towards the gnome-lib librsvg-2.
This module provides an Perl-Interface towards the gnome-lib librsvg-2 which is able to convert SVG(Scaleable Vector Graphics) into bitmapformats like (PNG,JPG,...). To which formats you can convert the svg-files depends on your gdk-pixbuf configuration. Still at least PNG and JPG should be available.
None by default.
new()
ArrayRef getKnownFormats()
returns all formats known to gdk-pixbuf
ArrayRef getSupportedFormats()
returns all formats you can store your svg image into
bool isFormatSupported( String format )
returns true if you can store your image in this format else false
bool loadImage( String svgfile[, int dpi=0, HashRef args] )
This is function provides a common call mechanism to for all functions below, the args-variable can hold the following values:
undef
empty hashref
zoom->[0] ... x_zoom zoom->[1] ... y_zoom
dimension->[0] ... x-size dimension->[1] ... y-size
dimension->[0] ... x-size dimension->[1] ... y-size dimension->[2] ... max-size-flag
zoom->[0] ........ x_zoom zoom->[1] ........ y_zoom dimension->[0] ... x-size dimension->[1] ... y-size
bool loadImageFromString( String svgfile[, int dpi=0, HashRef args] )
Loads the image from an String containing a plain SVG. For information about args see loadImage.
bool loadFromFile(String svgfile,[int dpi=0])
bool loadFromFileAtZoom( String svgfile, double x_zoom, double y_zoom[, int dpi=0] )
bool loadFromFileAtMaxSize( String svgfile, int width, int height[, int dpi=0] )
bool loadFromFileAtSize( String svgfile, int width, int height[, int dpi=0] )
bool loadFromFileAtZoomWithMax( String svgfile, double x_zoom, double y_zoom, int width, int height[, int dpi=0] )
bool loadFromString(String svgfile,[int dpi=0])
bool loadFromStringAtZoom( String svgfile, double x_zoom, double y_zoom[, int dpi=0] )
bool loadFromStringAtMaxSize( String svgfile, int width, int height[, int dpi=0] )
bool loadFromStringAtSize( String svgfile, int width, int height[, int dpi=0] )
bool loadFromStringAtZoomWithMax( String svgfile, double x_zoom, double y_zoom, int width, int height[, int dpi=0] )
bool convert( String svgfile, String bitmapfile[, int dpi=0, String format="png", int quality=100] )
bool convertAtZoom( String svgfile, String bitmapfile, double x_zoom, double y_zoom[, int dpi=0, String format="png", int quality=100] )
bool convertAtMaxSize( String svgfile, String bitmapfile, int width, int height[, int dpi=0, String format="png", int quality=100] )
bool convertAtSize( String svgfile, String bitmapfile, int width, int height[, int dpi=0, String format="png", int quality=100] )
bool convertAtZoomWithMax( String svgfile, String bitmapfile, double x_zoom, double y_zoom, int width, int height[, int dpi=0, String format="png", int quality=100] )
bool saveAs( String filename, [ String type, String quality ] )
Saves the image to a file
SV getBitmap( [ String type, String quality ] )
Saves the image to a scalar which can be passed on to other applications. This only return a useful value if you have compiled it with a gdk-pixbuf greater than or equal to 2.4
http://librsvg.sf.net
Tom Schindl, <tom.schindl@bestsolution.at>
Copyright 2004 by Tom Schindl and bestsolution Systemhaus GmbH
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
To install Image::LibRSVG, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Image::LibRSVG
CPAN shell
perl -MCPAN -e shell install Image::LibRSVG
For more information on module installation, please visit the detailed CPAN module installation guide.