an unstable branch. Added the declarations of FT_Get_First_Char and
FT_Get_Next_Char
* src/base/ftobjs.c: implemented FT_Get_First_Char and FT_Get_Next_Char
been touched, while keeping everything backwards-compatible..
* include/freetype/t1tables.h: re-naming structure types. This done
basically:
typedef T1_Struct_
{
} T1_Struct;
becomes:
typedef PS_StructRec_
{
} PS_StructRec, *PS_Struct;
typedef PS_StructRec T1_Struct; /* backwards-compatibility */
hence, we increase the coherency of the source code by effectuively
using the 'Rec' prefix for structure types..
the debug sub-system initialization. trace levels can now be specified
within the "FT2_DEBUG" environment variable. See the comments within
"ftdebug.c" for more details
* include/freetype/internal/fttrace.h: new file to define the trace
levels used for debugging. it is used both to define enums and
toggle names for FT2_DEBUG
* src/base/ftobjs.c, src/base/ftstream.c: FT_Assert renamed to
FT_ASSERT
* include/freetype/internal/ftextend.h, src/base/ftextend.c,
src/base/Jamfile, src/base/rules.mk: removing "ftextend" from the
library, since it is now completely obsolete..
w.r.t. the selected charmap.
* include/freetype/freetype.h: Add prototype.
* include/freetype/internal/ftdriver.h: Add `FTDriver_getNextChar'
typedef.
(FT_Driver_Class): Use it.
* include/freetype/internal/psnames.h: Add `PS_Next_Unicode_Func'
typedef.
(PSNames_Interface): Use it.
* include/freetype/internal/tttypes.h: Add `TT_CharNext_Func'
typedef.
(TT_CMapTable): Use it.
* src/base/ftobjs.c (FT_Get_Next_Char): New function, implementing
high-level API.
* src/cff/cffdrivr.c (cff_get_next_char): New function.
(cff_driver_class): Add it.
* src/cid/cidriver.c (Cid_Get_Next_Char): New function.
(t1cid_driver_class): Add it.
* src/pcf/pcfdriver.c (PCF_Get_Next_Char): New function.
(pcf_driver_class): Add it.
* src/psnames/psmodule.c (PS_Next_Unicode): New function.
(psnames_interface): Add it.
* src/sfnt/ttcmap.c (code_to_next0, code_to_next2, code_to_next4,
code_to_next6, code_to_next_8_12, code_to_next_10): New auxiliary
functions.
(TT_CharMap_Load): Use them.
* src/truetype/ttdriver.c (Get_Next_Char): New function.
(tt_driver_class): Add it.
* src/type1/t1driver.c (Get_Next_Char): New function.
(t1_driver_class): Add it.
* src/winfnt/winfnt.c (FNT_Get_Next_Char): New function.
(winfnt_driver_class): Add it.
* src/pcf/pcfread.c (pcf_load_font): For now, report Unicode for
Unicode and Latin 1 encodings.
library when dealing with certain weird fonts (like "Stalingrad",
in "sadn.pfb". This font has no full font name entry.. )
* src/base/ftoutln.c, include/freetype/ftoutln.h: added the
FT_Outline_Check API to check the consistency of outline data
* src/base/ftobjs.c (FT_Load_Glyph): added a call to the new
FT_Outline_Check to ensure that loaded glyphs are valid. This
allows certain fonts like "tt1095m_.ttf" to be loaded even though
it appears they contain really funky glyphs..
there still is a bug there though.. !!
constant with a fixed-float equivalent. For some reason, some compilers
aren't capable of directly computing a floating pointer constant casted
to FT_Fixed, and will link a math library instead !!
for the Postscript hinter
* docs/BUGS: closed the AUTOHINT-NO-SBITS bug.
* src/pshinter/pshrec.c (t2_hint_stems), src/cff/cffobjs.h,
src/cff/cffobjs.c, src/cff/cffload.c, src/cff/cffload.h,
src/cff/cffgload.c, src/cff/cffgload.h, src/cff/cffdriver.c,
include/freetype/internal/cfftypes.h: added Postscript hinter support
to the CFF driver
* src/base/ftobjs.c (FT_Done_Library): fixed a stupid bug that crashed
the library on exit
on hinted glyphs..
* src/cid/cidgload.c, src/cid/cidobjs.c, src/cid/cidobjs.h,
src/cid/cidriver.c, include/freetype/internal/t1types.h: added
Postscript hinter support to the CID font driver !!
(FT_Load_Glyph): "fixed" the bug that prevented embedded bitmaps from
begin loaded when the auto-hinter is used.. This actually is a hack
but will be enough until the internal re-design scheduled for
FreeType 2.1
some of the exported functions should only be used by applications
that need to implement custom cache types
* src/truetype/ttgload.c: fixed a nasty bug that prevent composites
from loading correctly. Believe it or not, this was due to an invalid
macro definition !!
GET_LongLE and GET_ULongLE which where incorrect (creating problems
in the pcf driver)..
* INSTALL: updated the instructions to build shared libraries with
Jam.. they were simply erroneous..
purposes..
* src/smooth/ftsmooth.c (ft_smooth_render): fixed a nasty hidden bug where
outline shifting wasn't correctly undone after bitmap rasterization. this
created problems with certain glyphs (like '"' of certain fonts..) and
the cache system..
* src/pshinter/pshalgo2.c (psh2_hint_table_init),
src/pshinter/pshalgo1.c (psh1_hint_table_init): removed compiler
warnings
* include/freetype/cache/*, src/cache/*: yet another massive rewrite of
the caching sub-system, in order to both increase performance and allow
simpler cache sub-classing. As an example, the code for the image and
sbit caches is now much simpler
I still need to update the documentation in www/freetype2/docs/cache.html
to reflect the new design though..
codes and LCIDs as found in MSDN (Passport SDK). Also added
comments about the meaning of bit 57 of OS/2 (TT_UCR_SURROGATES)
which with OpenType v.1.3 now means "there is a character beyond
FFFF in this font". Thanks to Detlef Wuerkner <TetiSoft@apg.lahn.de>
for noticing this.