Image-Base-SVG
view release on metacpan or search on metacpan
devel/run.pl view on Meta::CPAN
# my $svg = $parser->parsefile ($filename);
# }
system ("xzgv $filename");
$image->load($filename);
exit 0;
}
{
my $svg = SVG->new;
$svg->tag('title')->cdata('hello');
my $xml = $svg->xmlify;
$xml =~ s/title /title/;
print "$xml\n";
{
require XML::LibXML;
my $parser = XML::LibXML->new;
$parser->set_option(validation => 0);
$parser->set_option(recover => 1);
my $dom = $parser->parse_string($xml);
print "DOM: $dom\n";
devel/run.pl view on Meta::CPAN
}
exit 0;
}
{
my $svg = SVG->new (width=>456,height=>123);
my @elems = $svg->getElements();
### @elems
$svg->comment('abc');
$svg->comment('def');
# $svg->title->cdata('abcdef');
### $svg
$svg = $svg->cloneNode;
print $svg->xmlify;
print $svg->xmlify;
print $svg->xmlify;
exit 0;
}
{
require XML::SAX;
lib/Image/Base/SVG.pm view on Meta::CPAN
: ()));
}
my $self = bless { -svg_object => $svg }, $class;
### %params
$self->set (%params);
return $self;
}
# these two not documented yet
my %key_to_cdata = ('-title' => 'title',
'-description' => 'desc');
my %key_to_attribute = ('-width' => 'width',
'-height' => 'height');
sub _get {
my ($self, $key) = @_;
### _get(): $key
if (my $tagname = $key_to_cdata{$key}) {
my $elem;
return (($elem = _get_tag($self,$tagname))
&& $elem->getCDATA);
} elsif (my $aname = $key_to_attribute{$key}) {
return _svg_element($self)->getAttribute ($aname);
} else {
return $self->{$key};
}
}
sub set {
my $self = shift;
while (@_) {
my $key = shift;
@_ or croak "Odd number of arguments to set()";
my $value = shift;
if (my $tagname = $key_to_cdata{$key}) {
my $elem = _get_or_create_tag($self,$tagname);
$elem->cdata ($value);
} elsif (my $aname = $key_to_attribute{$key}) {
### $aname
### $value
_svg_element($self)->setAttribute ($aname, $value);
} else {
$self->{$key} = $value;
}
}
lib/Image/Base/SVG.pm view on Meta::CPAN
# $svg->comment ("\n\tGenerated using ".ref($self)." version ".$self->VERSION."\n");
return print $fh $svg->xmlify;
}
# sub _add_comment {
# my ($self) = @_;
# my $svg_element = _svg_element($self);
# my $generated
# = "\n\tGenerated using ".ref($self)." version ".$self->VERSION."\n";
# foreach my $comment ($svg_element->getElements('comment')) {
# if ($comment->cdata eq $generated) {
# return;
# }
# }
# $self->{'-svg_object'}->comment ($generated);
# }
1;
__END__
=for stopwords SVG filename Ryde
( run in 0.701 second using v1.01-cache-2.11-cpan-454fe037f31 )