[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
API additions
From: |
David Turner |
Subject: |
API additions |
Date: |
Thu, 30 Mar 2000 12:28:41 +0200 |
Hello,
I have made a few changes to the FreeType 2 API in order to fulfill
some requests expressed lately. Here is a short description of them.
- moved the declaration of FT_New_Size, FT_Done_Size, FT_New_GlyphSlot
& FT_Done_GlyphSlot to internal headers, as they should not be used
by client applications
- moved all outlines functions (FT_Outline_...) to ftoutln.c which is
now a required component of the base layer. However, some functions
within it are convenience for client applications, and can be ommitted
from the build when defining the macro FT_CONFIG_OPTION_NO_CONVENIENCE_FUNCS
in "config/ftoption.h"
- FT_Vector_Transform now takes a FT_Vector* as its first parameter.
By the way, a small bug was fixed in FT_MulFix..
- added some additional types and functions to deal with glyph images.
See the new "include/ftglyph.h" header files. Its implementation is in
"src/base/ftglyph.c" and is optional to the base layer. Note that there
is also a new function FT_Set_Transform used to generate glyph images.
- added a new demonstration program, named "demos/src/ftstring" which
demonstrates the use of this new API. The demo scales/rotates a string
of text, and supports kerning. It can be brought to the level of "ftstrtto"
when the OpenType Layout is migrated to FT2. By the way, it was a good
way to find a few bugs in the raster (that are still unresolved due to
lack of time).
- changed considerably the raster's interface. This in order to solve two
problems:
- more easily plug rasters in the system
- provide support for direct rendering in client bitmaps (instead
of using a temporary buffer). Note that currently, only the "ftgrays"
raster supports this.
the demonstration programs have been updated to reflect this new interface.
however, none of them currently supports direct rendering.
In summary, there was no major change to the interface, but convenience
functions
and API were added to make FT2 easier to use..
This was commited on Monday, so should be available on all mirrors by now..
Your testing and input is now welcomed :-)
Cheers,
- David
- API additions,
David Turner <=