Lutz Gehlen > SVG-Rasterize > SVG::Rasterize::Engine::PangoCairo

Download:
SVG-Rasterize-0.003008.tar.gz

Dependencies

Annotate this POD

CPAN RT

Open  1
View/Report Bugs
Module Version: 0.003007   Source  

NAME ^

SVG::Rasterize::Engine::PangoCairo - rasterize output using Cairo

VERSION ^

Version 0.003007

SYNOPSIS ^

  # explicit construction (unusual)
  use SVG::Rasterize::Engine::PangoCairo;
  my $engine = SVG::Rasterize::Engine::PangoCairo->new
      (width  => 640, height => 480);

DESCRIPTION ^

This class provides a rasterization backend for SVG::Rasterize based on the Cairo and Pango libraries.

This class is only instantiated by the rasterize method of SVG::Rasterize.

This documentation focues on this specific implementation. For a more general description of the engine interface see SVG::Rasterize::Engine.

INTERFACE ^

Constructors

new

  SVG::Rasterize::Engine::PangoCairo->new(%args)

Creates a new SVG::Rasterize::Engine::PangoCairo object and calls init(%args). If you subclass SVG::Rasterize::Engine::PangoCairo overload init, not new.

init

  $cairo->init(%args)

If you overload init, your method should also call this one. It initializes the attributes width and height which are mandatory parameters and have to be non-negative integers.

Other backends are also required to validate their init parameters because the engine_args hash given by the user to SVG::Rasterize is handed over to the new constructor of the engine class without validation.

Public Attributes

Methods for Developers

See <SVG::Rasterize::Engine|SVG::Rasterize::Engine>.

draw_path

text_width

draw_text

write

  $engine->write(%args)

Writes the rendered image to a file.

Example:

  $engine->write(type => 'png', file_name => 'foo.png');

type and file_name are the only supported parameters at the moment and the only supported type is "png". If file_name has a false value, no output is written and a warning is issued. Besides that, file_name is not validated at all. Make sure that you provide a sane value (whatever that means to you).

DIAGNOSTICS ^

Exceptions

Warnings

INTERNALS ^

Internal Methods

These methods are just documented for myself. You can read on to satisfy your voyeuristic desires, but be aware of that they might change or vanish without notice in a future version.

AUTHOR ^

Lutz Gehlen, <perl at lutzgehlen.de>

LICENSE AND COPYRIGHT ^

Copyright 2010-2011 Lutz Gehlen.

This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.

See http://dev.perl.org/licenses/ for more information.

syntax highlighting: