NAME

Graphics::Primitive::Font - Text styling

DESCRIPTION

Graphics::Primitive::Font represents the various options that are available when rendering text. The options here may or may not have an effect on your rendering. They represent a cross-section of the features provided by various drivers. Setting them should not break anything, but may not have an effect if the driver doesn't understand the option.

SYNOPSIS

  use Graphics::Primitive::Font;

  my $font = Graphics::Primitive::Font->new({
    family => 'Arial',
    size => 12,
    slant => 'normal'
  });

METHODS

Constructor

Attributes

antialias_modes

Set the antialiasing mode for this font. Possible values are default, none, gray and subpixel.

family

Set this font's family.

hint_metrics

Controls whether to hint font metrics. Hinting means quantizing them so that they are integer values in device space. This improves the consistency of letter and line spacing, however it also means that text will be laid out differently at different zoom factors. May not be supported by all drivers.

hint_style

Set the the type of hinting to do on font outlines. Hinting is the process of fitting outlines to the pixel grid in order to improve the appearance of the result. Since hinting outlines involves distorting them, it also reduces the faithfulness to the original outline shapes. Not all of the outline hinting styles are supported by all drivers. Options are default, none, slight, medium and full.

size

Set/Get the size of this font.

slant

Set/Get the slant of this font. Valid values are normal, italic and oblique.

subpixel_order

Set the order of color elements within each pixel on the display device when rendering with subpixel antialiasing. Value values are default, rgb, bgr, vrgb and vbgr.

variant

Set/Get the variant of this font. Valid values are normal or small-caps.

weight

Set/Get the weight of this font. Value valies are normal and bold.

METHODS

new

Creates a new Graphics::Primitive::Font.

derive

Clone this font but change one or more of it's attributes by passing in a hashref of options:

  my $new = $font->derive({ attr => $newvalue });
  

The returned font will be identical to the cloned one, save the attributes specified.

AUTHOR

Cory Watson, <gphat@cpan.org>

COPYRIGHT & LICENSE

Copyright 2008-2010 by Cory G Watson.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.