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.240 second using v1.01-cache-2.11-cpan-454fe037f31 )