Font::FreeType man page on Raspbian

Man page or keyword search:  
man Server   8174 pages
apropos Keyword Search (all sections)
Output format
Raspbian logo
[printable version]

Font::FreeType(3pm)   User Contributed Perl Documentation  Font::FreeType(3pm)

NAME
       Font::FreeType - read font files and render glyphs from Perl using
       FreeType2

SYNOPSIS
	   use Font::FreeType;

	   my $freetype = Font::FreeType->new;
	   my $face = $freetype->face('Vera.ttf');

	   $face->set_char_size(24, 24, 100, 100);
	   my $glyph = $face->glyph_from_char('A');

DESCRIPTION
       This module allows Perl programs to conveniently read information from
       font files.  All the font access is done through the FreeType2 library,
       which supports many formats.  It can render images of characters with
       high-quality hinting and antialiasing, extract metrics information, and
       extract the outlines of characters in scalable formats like TrueType.

       Warning: this module is currently in 'beta' stage.  It'll be another
       release or two before it stabilizes.  The API may change in ways that
       break programs based on it, but I don't think it will change much.
       Some of the values returned may be wrong, or not scaled correctly.  See
       the TODO file to get a handle on how far along this work is.
       Contributions welcome, particularly if you know more than I do (which
       isn't much) about fonts and the FreeType2 library.

       The Font::FreeType API is not intended to replicate the C API of the
       FreeType library -- it offers a much more Perl-friendly interface.

       The quickest way to get started with this library is to look at the
       examples in the examples directory of the distribution.	Full details
       of the API are contained in this documentation, and (more importantly)
       the documentation for the Font::FreeType::Face and
       Font::FreeType::Glyph classes.

       To use the library, first create a Font::FreeType object.  This can be
       used to load faces from files, for example:

	   my $freetype = Font::FreeType->new;
	   my $face = $freetype->face('Vera.ttf');

       If your font is scalable (i.e., not a bitmapped font) then set the size
       and resolution you want to see it at, for example 24pt at 100dpi:

	   $face->set_char_size(24, 24, 100, 100);

       Then load a particular glyph (an image of a character), either by
       character code (in Unicode) or the actual character:

	   my $glyph = $face->glyph_from_char_code(65);
	   my $glyph = $face->glyph_from_char('A');

       Glyphs can be rendered to bitmap images, among other things:

	   my $bitmap = $glyph->bitmap;

       See the documentation for Font::FreeType::Glyph for details of the
       format of the bitmap array reference that returns, and for other ways
       to get information about a glyph.

METHODS
       Unless otherwise stated, all methods will die if there is an error.

       new()
	   Create a new 'instance' of the freetype library and return the
	   object.  This is a class method, which doesn't take any arguments.
	   If you only want to load one face, then it's probably not even
	   worth saving the object to a variable:

	       my $face = Font::FreeType->new->face('Vera.ttf');

       face(filename, %options)
	   Return a Font::FreeType::Face object representing a font face from
	   the specified file.

	   The "index" option specifies which face to load from the file.  It
	   defaults to 0, and since most fonts only contain one face it rarely
	   needs to be provided.

	   The "load_flags" option takes various flags which alter the way
	   glyphs are loaded.  The default is usually OK for rendering fonts
	   to bitmap images.  When extracting outlines from fonts, be sure to
	   set the FT_LOAD_NO_HINTING flag.

	   The following load flags are available.  They can be combined with
	   the bitwise OR operator ("|").  The symbols are exported by the
	   module and so will be available once you do "use Font::FreeType".

	   FT_LOAD_DEFAULT
	       The same as doing nothing special.

	   FT_LOAD_CROP_BITMAP
	       Remove extraneous black bits round the edges of bitmaps when
	       loading embedded bitmaps.

	   FT_LOAD_FORCE_AUTOHINT
	       Use FreeType's own automatic hinting algorithm rather than the
	       normal TrueType one.  Probably only useful for testing the
	       FreeType library.

	   FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH
	       Probably only useful for loading fonts with wrong metrics.

	   FT_LOAD_IGNORE_TRANSFORM
	       Don't transform glyphs.	This module doesn't yet have support
	       for transformations.

	   FT_LOAD_LINEAR_DESIGN
	       Don't scale the metrics.

	   FT_LOAD_NO_AUTOHINT
	       Don't use the FreeType autohinting algorithm.  Hinting with
	       other algorithms (such as the TrueType one) will still be done
	       if possible.  Apparently some fonts look worse with the
	       autohinter than without any hinting.

	       This option is only available with FreeType 2.1.3 or newer.

	   FT_LOAD_NO_BITMAP
	       Don't load embedded bitmaps provided with scalable fonts.
	       Bitmap fonts are still loaded normally.	This probably doesn't
	       make much difference in the current version of this module, as
	       embedded bitmaps aren't deliberately used.

	   FT_LOAD_NO_HINTING
	       Prevents the coordinates of the outline from being adjusted
	       ('grid fitted') to the current size.  Hinting should be turned
	       on when rendering bitmap images of glyphs, and off when
	       extracting the outline information if you don't know at what
	       resolution it will be rendered.	For example, when converting
	       glyphs to PostScript or PDF, use this to turn the hinting off.

	   FT_LOAD_NO_SCALE
	       Don't scale the font's outline or metrics to the right size.
	       This will currently generate bad numbers.  To be fixed in a
	       later version.

	   FT_LOAD_PEDANTIC
	       Raise errors when a font file is broken, rather than trying to
	       work around it.

	   FT_LOAD_VERTICAL_LAYOUT
	       Return metrics and glyphs suitable for vertical layout.	This
	       module doesn't yet provide any intentional support for vertical
	       layout, so this probably won't be much use.

       version()
	   Returns the version number of the underlying FreeType library being
	   used.  If called in scalar context returns a string containing
	   three numbers in the format "major.minor.patch".  In list context
	   returns the three numbers as separate values.

SEE ALSO
       Font::FreeType::Face, Font::FreeType::Glyph

AUTHOR
       Geoff Richards <qef@laxan.com>

COPYRIGHT
       Copyright 2004, Geoff Richards.

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

perl v5.10.0			  2004-09-11		   Font::FreeType(3pm)
[top]

List of man pages available for Raspbian

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net