convert to utf-8

This commit is contained in:
Werner Lemberg 2006-04-29 06:24:30 +00:00
parent 4e03fe76cc
commit a1c990a632
3 changed files with 72 additions and 72 deletions

View File

@ -66,7 +66,7 @@
* src/pcf/pcf.h (PCF_Done_Face): Removed. * src/pcf/pcf.h (PCF_Done_Face): Removed.
2002-02-06 Detlef Würkner <TetiSoft@apg.lahn.de> 2002-02-06 Detlef Würkner <TetiSoft@apg.lahn.de>
* src/pcf/pcfdriver.c (FT_Done_Face): Fixed small memory leak. * src/pcf/pcfdriver.c (FT_Done_Face): Fixed small memory leak.
@ -193,7 +193,7 @@
2002-01-21 Antoine Leca <Antoine-Freetype@Leca-Marti.org> 2002-01-21 Antoine Leca <Antoine-Freetype@Leca-Marti.org>
* docs/PATENTS: Typo fixed (thanks to Detlef `Hawkeye' Würkner) in * docs/PATENTS: Typo fixed (thanks to Detlef `Hawkeye' Würkner) in
the URL for the online resource. the URL for the online resource.
2002-01-18 Ian Brown <ian.brown@printsoft.de> 2002-01-18 Ian Brown <ian.brown@printsoft.de>
@ -201,7 +201,7 @@
* builds/win32/ftdebug.c: New file. * builds/win32/ftdebug.c: New file.
* builds/win32/visualc/freetype.dsp: Updated. * builds/win32/visualc/freetype.dsp: Updated.
2002-01-18 Detlef Würkner <TetiSoft@apg.lahn.de> 2002-01-18 Detlef Würkner <TetiSoft@apg.lahn.de>
* builds/amiga/src/base/ftsystem.c: Updated for AmigaOS 3.9. * builds/amiga/src/base/ftsystem.c: Updated for AmigaOS 3.9.
* builds/amiga/README: Updated. * builds/amiga/README: Updated.
@ -339,7 +339,7 @@
incorrect glyph advance in the case of mono-width fonts (like incorrect glyph advance in the case of mono-width fonts (like
Courier, Andale Mono, and others). Courier, Andale Mono, and others).
2001-12-22 Detlef Würkner <TetiSoft@apg.lahn.de> 2001-12-22 Detlef Würkner <TetiSoft@apg.lahn.de>
* builds/amiga/*: Adaptations to latest changes. * builds/amiga/*: Adaptations to latest changes.
Support added for MorphOS. Support added for MorphOS.
@ -586,7 +586,7 @@
slightly improper results for `FT_Cos' and `FT_Sin' (example: slightly improper results for `FT_Cos' and `FT_Sin' (example:
FT_Sin(0) == -1!). FT_Sin(0) == -1!).
2001-12-11 Detlef Würkner <TetiSoft@apg.lahn.de> 2001-12-11 Detlef Würkner <TetiSoft@apg.lahn.de>
* include/freetype/internal/ftstream.h (GET_LongLE, GET_ULongLE): * include/freetype/internal/ftstream.h (GET_LongLE, GET_ULongLE):
Fixed incorrect argument types. Fixed incorrect argument types.
@ -694,7 +694,7 @@
codes and LCIDs as found in MSDN (Passport SDK). Also added codes and LCIDs as found in MSDN (Passport SDK). Also added
comments about the meaning of bit 57 of the `OS/2' table comments about the meaning of bit 57 of the `OS/2' table
(TT_UCR_SURROGATES) which (with OpenType v.1.3) now means `there is (TT_UCR_SURROGATES) which (with OpenType v.1.3) now means `there is
a character beyond 0xFFFF in this font'. Thanks to Detlef Würkner a character beyond 0xFFFF in this font'. Thanks to Detlef Würkner
<TetiSoft@apg.lahn.de> for noticing this. <TetiSoft@apg.lahn.de> for noticing this.
2001-11-20 David Turner <david@freetype.org> 2001-11-20 David Turner <david@freetype.org>
@ -1024,11 +1024,11 @@
(ftc_manager_init_size, ftc_manager_flush_size): Use (ftc_manager_init_size, ftc_manager_flush_size): Use
FT_Activate_Size. FT_Activate_Size.
2001-09-20 Detlef Würkner <TetiSoft@apg.lahn.de> 2001-09-20 Detlef Würkner <TetiSoft@apg.lahn.de>
* builds/amiga/*: Added port to Amiga with the SAS/C compiler. * builds/amiga/*: Added port to Amiga with the SAS/C compiler.
2001-09-15 Detlef Würkner <TetiSoft@apg.lahn.de> 2001-09-15 Detlef Würkner <TetiSoft@apg.lahn.de>
* src/type1/t1afm.c (T1_Done_AFM): Free `afm'. * src/type1/t1afm.c (T1_Done_AFM): Free `afm'.
@ -1216,7 +1216,7 @@
instead of FT_Int as type for `length' parameter. instead of FT_Int as type for `length' parameter.
* include/freetype/internal/psaux.h (PSAux_Interface): Updated. * include/freetype/internal/psaux.h (PSAux_Interface): Updated.
2001-06-27 Wolfgang Domröse <porthos.domroese@harz.de> 2001-06-27 Wolfgang Domröse <porthos.domroese@harz.de>
* src/psaux/psobjs.c, src/psaux/psobjs.h (T1_Decrypt): Use FT_Offset * src/psaux/psobjs.c, src/psaux/psobjs.h (T1_Decrypt): Use FT_Offset
instead of FT_Int as type for `length' parameter. instead of FT_Int as type for `length' parameter.
@ -1242,7 +1242,7 @@
that the kerning table is correctly sorted (some problem fonts don't that the kerning table is correctly sorted (some problem fonts don't
have a correct kern table). have a correct kern table).
2001-06-26 Wolfgang Domröse <porthos.domroese@harz.de> 2001-06-26 Wolfgang Domröse <porthos.domroese@harz.de>
* include/freetype/internal/ftstream.h (FT_GET_OFF3_LE): Fix typo. * include/freetype/internal/ftstream.h (FT_GET_OFF3_LE): Fix typo.
@ -1895,7 +1895,7 @@
* src/type1/t1load.c (parse_font_bbox): Changed to use FT_Fixed * src/type1/t1load.c (parse_font_bbox): Changed to use FT_Fixed
number handling. number handling.
2001-03-10 Henrik Grubbström <grubba@roxen.com> 2001-03-10 Henrik Grubbström <grubba@roxen.com>
* src/*/*.c: Added many casts to make code more 64bit-safe. * src/*/*.c: Added many casts to make code more 64bit-safe.
@ -2448,7 +2448,7 @@
2000-11-29 David Turner <david.turner@freetype.org> 2000-11-29 David Turner <david.turner@freetype.org>
* src/base/ftbbox.c (BBox_Conic_Check): Fixed a really stupid * src/base/ftbbox.c (BBox_Conic_Check): Fixed a really stupid
bug in the formula used to compute the conic Bézier extrema bug in the formula used to compute the conic Bézier extrema
of non-monotonous arcs. of non-monotonous arcs.
2000-11-29 Werner Lemberg <wl@gnu.org> 2000-11-29 Werner Lemberg <wl@gnu.org>
@ -2609,5 +2609,5 @@ fully.
Local Variables: Local Variables:
version-control: never version-control: never
coding: latin-1 coding: utf-8
End: End:

View File

@ -8,7 +8,7 @@
* src/pcf/readme: Renamed to... * src/pcf/readme: Renamed to...
* src/pcf/README: This. * src/pcf/README: This.
2005-06-07 Detlef Würkner <TetiSoft@apg.lahn.de> 2005-06-07 Detlef Würkner <TetiSoft@apg.lahn.de>
* builds/amiga/*: Added copyright notes, reworked some comments. * builds/amiga/*: Added copyright notes, reworked some comments.
@ -453,7 +453,7 @@
* docs/CHANGES, include/freetype/freetype.h: Improve documentation * docs/CHANGES, include/freetype/freetype.h: Improve documentation
of FT_Set_Pixel_Sizes and FT_Set_Char_Size. of FT_Set_Pixel_Sizes and FT_Set_Char_Size.
2005-03-26 Detlef Würkner <TetiSoft@apg.lahn.de> 2005-03-26 Detlef Würkner <TetiSoft@apg.lahn.de>
* builds/amiga/src/base/ftsystem.c (ft_amiga_stream_io): Fix buffer * builds/amiga/src/base/ftsystem.c (ft_amiga_stream_io): Fix buffer
offsets after a large read. offsets after a large read.
@ -470,7 +470,7 @@
* src/sfnt/ttsbit0.h: Dummy file for build with `make'. * src/sfnt/ttsbit0.h: Dummy file for build with `make'.
2005-03-26 Detlef Würkner <TetiSoft@apg.lahn.de> 2005-03-26 Detlef Würkner <TetiSoft@apg.lahn.de>
Update of the Amiga port. Update of the Amiga port.
@ -478,7 +478,7 @@
builds/amiga/smakefile: Included the base extension files builds/amiga/smakefile: Included the base extension files
(ftbitmap.c, ftotval.c, ftpfr.c, ftstroke.c, ftxf86.c). (ftbitmap.c, ftotval.c, ftpfr.c, ftstroke.c, ftxf86.c).
2005-03-25 Detlef Würkner <TetiSoft@apg.lahn.de> 2005-03-25 Detlef Würkner <TetiSoft@apg.lahn.de>
Update of the Amiga port. Update of the Amiga port.
@ -1816,7 +1816,7 @@
* docs/CHANGES, docs/VERSION.DLL: Updated. * docs/CHANGES, docs/VERSION.DLL: Updated.
2004-08-11 Detlef Würkner <TetiSoft@apg.lahn.de> 2004-08-11 Detlef Würkner <TetiSoft@apg.lahn.de>
* src/base/ftrfork.c (FT_Raccess_Guess) * src/base/ftrfork.c (FT_Raccess_Guess)
[!FT_CONFIG_OPTION_GUESSING_EMBEDDED_FORK]: Remove compiler [!FT_CONFIG_OPTION_GUESSING_EMBEDDED_FORK]: Remove compiler
@ -1877,7 +1877,7 @@
(BDF_Face_Init), src/truetype/ttgxvar (TT_Get_MM_Var, (BDF_Face_Init), src/truetype/ttgxvar (TT_Get_MM_Var,
tt_face_vary_cvt): Fix compiler warnings. tt_face_vary_cvt): Fix compiler warnings.
2004-07-26 Søren Sandmann <sandmann@daimi.au.dk> 2004-07-26 Søren Sandmann <sandmann@daimi.au.dk>
* src/pcf/pcfread.c (pcf_interpret_style): Always allocate memory for * src/pcf/pcfread.c (pcf_interpret_style): Always allocate memory for
face->style_name. face->style_name.
@ -1888,7 +1888,7 @@
* include/freetype/config/ftconfig.h (FT_SIZEOF_LONG): Recognize * include/freetype/config/ftconfig.h (FT_SIZEOF_LONG): Recognize
five-byte `long' (which is avoided then). five-byte `long' (which is avoided then).
2004-07-25 Detlef Würkner <TetiSoft@apg.lahn.de> 2004-07-25 Detlef Würkner <TetiSoft@apg.lahn.de>
* src/pcf/pcfdrivr.c (PCF_Set_Pixel_Size): Compare heights, not * src/pcf/pcfdrivr.c (PCF_Set_Pixel_Size): Compare heights, not
ppem values. ppem values.
@ -2083,7 +2083,7 @@
2004-06-14 Werner Lemberg <wl@gnu.org> 2004-06-14 Werner Lemberg <wl@gnu.org>
* src/lzw/zopen.c: Comment out inclusion of signal.h and unistd.h. * src/lzw/zopen.c: Comment out inclusion of signal.h and unistd.h.
Reported by Hyvärinen Jyrki Juhani. Reported by Hyvärinen Jyrki Juhani.
2004-06-11 Werner Lemberg <wl@gnu.org> 2004-06-11 Werner Lemberg <wl@gnu.org>
@ -3422,7 +3422,7 @@
* src/winfonts/winfnt.c (FNT_Size_Set_Pixels): Fix sign of * src/winfonts/winfnt.c (FNT_Size_Set_Pixels): Fix sign of
size->metrics.descender. size->metrics.descender.
2003-12-31 Wolfgang Domröse <porthos.domroese@harz.de> 2003-12-31 Wolfgang Domröse <porthos.domroese@harz.de>
* src/cff/cffgload.c (cff_decoder_parse_charstrings) * src/cff/cffgload.c (cff_decoder_parse_charstrings)
[FT_DEBUG_LEVEL_TRACE]: Use `%ld' in FT_TRACE4. [FT_DEBUG_LEVEL_TRACE]: Use `%ld' in FT_TRACE4.
@ -3516,7 +3516,7 @@
FT_ENCODING_NONE except for FT_WinFNT_ID_MAC. FT_ENCODING_NONE except for FT_WinFNT_ID_MAC.
* include/freetype/freetype.h (FT_Encoding): Improve comment, * include/freetype/freetype.h (FT_Encoding): Improve comment,
based on work by Detlef Würkner <TetiSoft@apg.lahn.de>. based on work by Detlef Würkner <TetiSoft@apg.lahn.de>.
* docs/CHANGES: Updated. * docs/CHANGES: Updated.
@ -3661,12 +3661,12 @@
* docs/CHANGES: Updated. * docs/CHANGES: Updated.
2003-12-15 Wolfgang Domröse <porthos.domroese@harz.de> 2003-12-15 Wolfgang Domröse <porthos.domroese@harz.de>
* builds/atari/*: New directory for building FreeType 2 on Atari * builds/atari/*: New directory for building FreeType 2 on Atari
with the PureC compiler. with the PureC compiler.
2003-12-12 Wolfgang Domröse <porthos.domroese@harz.de> 2003-12-12 Wolfgang Domröse <porthos.domroese@harz.de>
* src/type1/t1gload.c (T1_Parse_Glyph_And_Get_Char_String): Add * src/type1/t1gload.c (T1_Parse_Glyph_And_Get_Char_String): Add
cast. cast.
@ -3718,7 +3718,7 @@
* src/cff/cfftypes.h (CFF_FontRecDictRec): Remove `base_font_name' * src/cff/cfftypes.h (CFF_FontRecDictRec): Remove `base_font_name'
and `postscript'. and `postscript'.
2003-12-10 Detlef Würkner <TetiSoft@apg.lahn.de> 2003-12-10 Detlef Würkner <TetiSoft@apg.lahn.de>
* src/pcf/pcfdrivr.c (pcf_get_charset_id): New function (a clone * src/pcf/pcfdrivr.c (pcf_get_charset_id): New function (a clone
of the similar BDF function). of the similar BDF function).
@ -3750,7 +3750,7 @@
(FT_Open_Face) [!FT_MACINTOSH]: Add conditional (FT_Open_Face) [!FT_MACINTOSH]: Add conditional
FT_CONFIG_OPTION_MAC_FONTS. FT_CONFIG_OPTION_MAC_FONTS.
2003-12-08 Wolfgang Domröse <porthos.domroese@harz.de> 2003-12-08 Wolfgang Domröse <porthos.domroese@harz.de>
* src/autohint/ahhint.c (ah_hinter_hint_edges, * src/autohint/ahhint.c (ah_hinter_hint_edges,
ah_hinter_align_strong_points): Add some casts. ah_hinter_align_strong_points): Add some casts.
@ -3955,7 +3955,7 @@
* src/base/fttype1.c (FT_Get_PS_Font_Info): Fix incorrectly applied * src/base/fttype1.c (FT_Get_PS_Font_Info): Fix incorrectly applied
patch. patch.
2003-10-31 Detlef Würkner <TetiSoft@apg.lahn.de> 2003-10-31 Detlef Würkner <TetiSoft@apg.lahn.de>
* src/base/fttype1.c (FT_Get_PS_Font_Info, FT_Has_PS_Glyph_Names): * src/base/fttype1.c (FT_Get_PS_Font_Info, FT_Has_PS_Glyph_Names):
Fix parameter order in calls to FT_FACE_FIND_SERVICE. Fix parameter order in calls to FT_FACE_FIND_SERVICE.
@ -4897,7 +4897,7 @@
* configure: Set DOC_DIR variable. * configure: Set DOC_DIR variable.
2003-07-07 Patrik Hägglund <patrik.hagglund@bredband.net> 2003-07-07 Patrik Hägglund <patrik.hagglund@bredband.net>
* builds/freetype.mk (refdoc): New target to build the * builds/freetype.mk (refdoc): New target to build the
documentation. documentation.
@ -5139,7 +5139,7 @@
(winfnt_driver_class), src/bdf/bdfdrivr.c (bdf_driver_class): Add (winfnt_driver_class), src/bdf/bdfdrivr.c (bdf_driver_class): Add
the FT_MODULE_DRIVER_NO_OUTLINES flag. the FT_MODULE_DRIVER_NO_OUTLINES flag.
2003-06-13 Detlef Würkner <TetiSoft@apg.lahn.de> 2003-06-13 Detlef Würkner <TetiSoft@apg.lahn.de>
* src/pfr/pfrobjs.c (pfr_slot_load): Apply font matrix. * src/pfr/pfrobjs.c (pfr_slot_load): Apply font matrix.
@ -5216,7 +5216,7 @@
TrueType specification. TrueType specification.
(Ins_MDRP, Ins_MIRP): Fix single width cut-in test. (Ins_MDRP, Ins_MIRP): Fix single width cut-in test.
2003-06-09 Detlef Würkner <TetiSoft@apg.lahn.de> 2003-06-09 Detlef Würkner <TetiSoft@apg.lahn.de>
* src/gzip/ftgzip.c: (inflate_mask): Replaced with... * src/gzip/ftgzip.c: (inflate_mask): Replaced with...
(NO_INFLATE_MASK): This. (NO_INFLATE_MASK): This.
@ -5228,7 +5228,7 @@
* src/gzip/ftgzip.c (ft_gzip_file_fill_output): Handle Z_STREAM_END * src/gzip/ftgzip.c (ft_gzip_file_fill_output): Handle Z_STREAM_END
correctly. correctly.
2003-06-09 Wolfgang Domröse <porthos.domroese@harz.de> 2003-06-09 Wolfgang Domröse <porthos.domroese@harz.de>
* src/pshinter/pshglob.c (psh_globals_new): Change calculation of * src/pshinter/pshglob.c (psh_globals_new): Change calculation of
dim->stdw.count to avoid compiler problem. dim->stdw.count to avoid compiler problem.
@ -5294,7 +5294,7 @@
* devel/ftoption.h: Updated. * devel/ftoption.h: Updated.
2003-06-07 Detlef Würkner <TetiSoft@apg.lahn.de> 2003-06-07 Detlef Würkner <TetiSoft@apg.lahn.de>
* include/freetype/internal/psaux.h, src/truetype/ttgload.h: * include/freetype/internal/psaux.h, src/truetype/ttgload.h:
s/index/idx/ to fix compiler warnings. s/index/idx/ to fix compiler warnings.
@ -5352,7 +5352,7 @@
* src/pshinter/pshglob.c (psh_globals_new): Fix default value of * src/pshinter/pshglob.c (psh_globals_new): Fix default value of
blue_scale. blue_scale.
2003-06-04 Wolfgang Domröse <porthos.domroese@harz.de> 2003-06-04 Wolfgang Domröse <porthos.domroese@harz.de>
* include/freetype/internal/ftdriver.h, * include/freetype/internal/ftdriver.h,
include/freetype/internal/ftobjs.h, include/freetype/internal/ftobjs.h,
@ -6674,7 +6674,7 @@
* include/freetype/ftcache.h (FT_POINTER_TO_ULONG): New macro. * include/freetype/ftcache.h (FT_POINTER_TO_ULONG): New macro.
(FTC_FACE_ID_HASH): Rewritten, using FT_POINTER_TO_ULONG. (FTC_FACE_ID_HASH): Rewritten, using FT_POINTER_TO_ULONG.
2002-10-22 Giuseppe Ghibò <ghibo@mandrakesoft.com> 2002-10-22 Giuseppe Ghibò <ghibo@mandrakesoft.com>
* include/freetype/freetype.h (FT_Encoding): Fix entry for latin-2. * include/freetype/freetype.h (FT_Encoding): Fix entry for latin-2.
@ -6731,7 +6731,7 @@
Update all casts. Update all casts.
(gray_render_line): Fix casts for `p' and `first'. (gray_render_line): Fix casts for `p' and `first'.
2002-10-02 Detlef Würkner <TetiSoft@apg.lahn.de> 2002-10-02 Detlef Würkner <TetiSoft@apg.lahn.de>
* src/bdf/bdflib.c (bdf_load_font): Allocate the _bdf_parse_t * src/bdf/bdflib.c (bdf_load_font): Allocate the _bdf_parse_t
structure with FT_ALLOC instead of using the stack. structure with FT_ALLOC instead of using the stack.
@ -6745,7 +6745,7 @@
(find_sbit_image): Remove cast. (find_sbit_image): Remove cast.
* src/raster/ftrend1.c (ft_raster1_render): Fix cast. * src/raster/ftrend1.c (ft_raster1_render): Fix cast.
2002-09-27 Wolfgang Domröse <porthos.domroese@harz.de> 2002-09-27 Wolfgang Domröse <porthos.domroese@harz.de>
* src/sfnt/ttload.c (tt_face_load_names): Use cast. * src/sfnt/ttload.c (tt_face_load_names): Use cast.
* src/sfnt/ttcmap.c (code_to_next2): Use long constant. * src/sfnt/ttcmap.c (code_to_next2): Use long constant.
@ -6811,7 +6811,7 @@
* src/psnames/psmodule.c (ps_unicode_value, ps_build_unicode_table): * src/psnames/psmodule.c (ps_unicode_value, ps_build_unicode_table):
Updated accordingly. Updated accordingly.
2002-09-26 Wolfgang Domröse <porthos.domroese@harz.de> 2002-09-26 Wolfgang Domröse <porthos.domroese@harz.de>
* src/cff/cffdrivr.c (Get_Kerning): Use FT_Long for `middle'. * src/cff/cffdrivr.c (Get_Kerning): Use FT_Long for `middle'.
(cff_get_glyph_name): Use cast for result of ft_strlen. (cff_get_glyph_name): Use cast for result of ft_strlen.
@ -6852,7 +6852,7 @@
* src/sfnt/sfnt_dir_check: Compare `magic' with unsigned long * src/sfnt/sfnt_dir_check: Compare `magic' with unsigned long
constant. constant.
2002-09-26 Detlef Würkner <TetiSoft@apg.lahn.de> 2002-09-26 Detlef Würkner <TetiSoft@apg.lahn.de>
* builds/amiga/include/freetype/config/ftmodule.h: Updated. * builds/amiga/include/freetype/config/ftmodule.h: Updated.
@ -6871,14 +6871,14 @@
charmap that uses offset=0xFFFFU instead of 0x0000 to indicate a charmap that uses offset=0xFFFFU instead of 0x0000 to indicate a
missing glyph). missing glyph).
2002-09-21 Wolfgang Domröse <porthos.domroese@harz.de> 2002-09-21 Wolfgang Domröse <porthos.domroese@harz.de>
* src/truetype/ttdriver.c (Load_Glyph): Fourth parameter must be * src/truetype/ttdriver.c (Load_Glyph): Fourth parameter must be
FT_Int32. FT_Int32.
* src/truetype/ttgload.c, src/truetype/ttgload.h (TT_Load_Glyph): * src/truetype/ttgload.c, src/truetype/ttgload.h (TT_Load_Glyph):
Ditto. Ditto.
2002-09-19 Wolfgang Domröse <porthos.domroese@harz.de> 2002-09-19 Wolfgang Domröse <porthos.domroese@harz.de>
More 16bit fixes. More 16bit fixes.
@ -6927,7 +6927,7 @@
2002-09-16 Werner Lemberg <wl@gnu.org> 2002-09-16 Werner Lemberg <wl@gnu.org>
16bit fixes from Wolfgang Domröse. 16bit fixes from Wolfgang Domröse.
* src/type1/t1parse.h (T1_ParserRec): Change type of `base_len' * src/type1/t1parse.h (T1_ParserRec): Change type of `base_len'
and `private_len' to FT_Long. and `private_len' to FT_Long.
@ -7890,7 +7890,7 @@
* src/type42/t42objs.h: Include FT_INTERNAL_TYPE42_TYPES_H. * src/type42/t42objs.h: Include FT_INTERNAL_TYPE42_TYPES_H.
(T42_Face): Removed since it is already in t42types.h. (T42_Face): Removed since it is already in t42types.h.
2002-06-21 Detlef Würkner <TetiSoft@apg.lahn.de> 2002-06-21 Detlef Würkner <TetiSoft@apg.lahn.de>
* src/pfrgload.c (pfr_glyph_load_compound): Fix loading of composite * src/pfrgload.c (pfr_glyph_load_compound): Fix loading of composite
glyphs. glyphs.
@ -7913,7 +7913,7 @@
* README, docs/CHANGES: Preparing the 2.1.2 release. * README, docs/CHANGES: Preparing the 2.1.2 release.
2002-06-19 Detlef Würkner <TetiSoft@apg.lahn.de> 2002-06-19 Detlef Würkner <TetiSoft@apg.lahn.de>
* src/base/fttype1.c: Include FT_INTERNAL_TYPE42_TYPES_H. * src/base/fttype1.c: Include FT_INTERNAL_TYPE42_TYPES_H.
(t1_face_check_cast): Removed. (t1_face_check_cast): Removed.
@ -7938,7 +7938,7 @@
instead. instead.
(T42_GlyphSlot_Load): Remove call to t42_check_size_change. (T42_GlyphSlot_Load): Remove call to t42_check_size_change.
2002-06-18 Detlef Würkner <TetiSoft@apg.lahn.de> 2002-06-18 Detlef Würkner <TetiSoft@apg.lahn.de>
* src/psaux/t1cmap.c (t1_cmap_custom_char_index, * src/psaux/t1cmap.c (t1_cmap_custom_char_index,
t1_cmap_custom_char_next): Fix index computation -- indices start t1_cmap_custom_char_next): Fix index computation -- indices start
@ -7967,7 +7967,7 @@
* builds/unix/install.mk (install, uninstall): Handle it. * builds/unix/install.mk (install, uninstall): Handle it.
2002-06-16 Detlef Würkner <TetiSoft@apg.lahn.de> 2002-06-16 Detlef Würkner <TetiSoft@apg.lahn.de>
Same fix for PFR driver. Same fix for PFR driver.
@ -7975,7 +7975,7 @@
Increase return value by 1. Increase return value by 1.
* src/pfr/pfrobjs.c (pfr_slot_load): Decrease index by 1. * src/pfr/pfrobjs.c (pfr_slot_load): Decrease index by 1.
2002-06-15 Detlef Würkner <TetiSoft@apg.lahn.de> 2002-06-15 Detlef Würkner <TetiSoft@apg.lahn.de>
Fix glyph indices to make index zero always the undefined glyph. Fix glyph indices to make index zero always the undefined glyph.
@ -7994,7 +7994,7 @@
* src/base/ftobjs.c (FT_Load_Glyph, FT_Get_Glyph_Name): Fix * src/base/ftobjs.c (FT_Load_Glyph, FT_Get_Glyph_Name): Fix
bounding tests. bounding tests.
2002-06-14 Detlef Würkner <TetiSoft@apg.lahn.de> 2002-06-14 Detlef Würkner <TetiSoft@apg.lahn.de>
Add new cmap support to BDF driver. Add new cmap support to BDF driver.
@ -8068,7 +8068,7 @@
bug that caused nasty memory overwrites. The hash table's bug that caused nasty memory overwrites. The hash table's
buckets array wasn't correctly resized when shrinked. buckets array wasn't correctly resized when shrinked.
2002-06-08 Detlef Würkner <TetiSoft@apg.lahn.de> 2002-06-08 Detlef Würkner <TetiSoft@apg.lahn.de>
* builds/amiga/smakefile, builds/amiga/makefile: Updated. * builds/amiga/smakefile, builds/amiga/makefile: Updated.
@ -8189,11 +8189,11 @@
* src/bdf/bdfdrivr.c (BDF_Glyph_Load): Ditto. * src/bdf/bdfdrivr.c (BDF_Glyph_Load): Ditto.
* src/bdf/README: Updated. * src/bdf/README: Updated.
2002-06-02 Detlef Würkner <TetiSoft@apg.lahn.de> 2002-06-02 Detlef Würkner <TetiSoft@apg.lahn.de>
* src/pfr/pfrload.c (pfr_phy_font_done): Free `blue_values' array. * src/pfr/pfrload.c (pfr_phy_font_done): Free `blue_values' array.
2002-05-29 Detlef Würkner <TetiSoft@apg.lahn.de> 2002-05-29 Detlef Würkner <TetiSoft@apg.lahn.de>
* src/bdf/bdflib.c (_bdf_readstream): Allocate `buf' dynamically. * src/bdf/bdflib.c (_bdf_readstream): Allocate `buf' dynamically.
(_bdf_parse_glyphs): Use correct size for allocating (_bdf_parse_glyphs): Use correct size for allocating
@ -8212,7 +8212,7 @@
compilation. compilation.
* src/pshglob.c (psh_blues_scale_zones): Fix compiler warning. * src/pshglob.c (psh_blues_scale_zones): Fix compiler warning.
2002-05-28 Detlef Würkner <TetiSoft@apg.lahn.de> 2002-05-28 Detlef Würkner <TetiSoft@apg.lahn.de>
* builds/amiga/makefile, builds/amiga/smakefile, * builds/amiga/makefile, builds/amiga/smakefile,
amiga/include/freetype/config/ftmodule.h: Updated to include amiga/include/freetype/config/ftmodule.h: Updated to include
@ -9435,5 +9435,5 @@ fully.
Local Variables: Local Variables:
version-control: never version-control: never
coding: latin-1 coding: utf-8
End: End:

View File

@ -30,8 +30,8 @@ I. Introduction
A rasterizer is a library in charge of converting a vectorial A rasterizer is a library in charge of converting a vectorial
representation of a shape into a bitmap. The FreeType rasterizer representation of a shape into a bitmap. The FreeType rasterizer
has been originally developed to render the glyphs found in has been originally developed to render the glyphs found in
TrueType files, made up of segments and second-order Béziers. TrueType files, made up of segments and second-order Béziers.
Meanwhile it has been extended to render third-order Bézier curves Meanwhile it has been extended to render third-order Bézier curves
also. This document is an explanation of its design and also. This document is an explanation of its design and
implementation. implementation.
@ -99,24 +99,24 @@ II. Rendering Technology
points indicate a line segment joining the two points. points indicate a line segment joining the two points.
One `off' point amidst two `on' points indicates a second-degree One `off' point amidst two `on' points indicates a second-degree
(conic) Bézier parametric arc, defined by these three points (conic) Bézier parametric arc, defined by these three points
(the `off' point being the control point, and the `on' ones the (the `off' point being the control point, and the `on' ones the
start and end points). Similarly, a third-degree (cubic) Bézier start and end points). Similarly, a third-degree (cubic) Bézier
curve is described by four points (two `off' control points curve is described by four points (two `off' control points
between two `on' points). between two `on' points).
Finally, for second-order curves only, two successive `off' Finally, for second-order curves only, two successive `off'
points forces the rasterizer to create, during rendering, an points forces the rasterizer to create, during rendering, an
`on' point amidst them, at their exact middle. This greatly `on' point amidst them, at their exact middle. This greatly
facilitates the definition of successive Bézier arcs. facilitates the definition of successive Bézier arcs.
The parametric form of a second-order Bézier curve is: The parametric form of a second-order Bézier curve is:
P(t) = (1-t)^2*P1 + 2*t*(1-t)*P2 + t^2*P3 P(t) = (1-t)^2*P1 + 2*t*(1-t)*P2 + t^2*P3
(P1 and P3 are the end points, P2 the control point.) (P1 and P3 are the end points, P2 the control point.)
The parametric form of a third-order Bézier curve is: The parametric form of a third-order Bézier curve is:
P(t) = (1-t)^3*P1 + 3*t*(1-t)^2*P2 + 3*t^2*(1-t)*P3 + t^3*P4 P(t) = (1-t)^3*P1 + 3*t*(1-t)^2*P2 + 3*t^2*(1-t)*P3 + t^3*P4
@ -125,7 +125,7 @@ II. Rendering Technology
For both formulae, t is a real number in the range [0..1]. For both formulae, t is a real number in the range [0..1].
Note that the rasterizer does not use these formulae directly. Note that the rasterizer does not use these formulae directly.
They exhibit, however, one very useful property of Bézier arcs: They exhibit, however, one very useful property of Bézier arcs:
Each point of the curve is a weighted average of the control Each point of the curve is a weighted average of the control
points. points.
@ -372,7 +372,7 @@ II. Rendering Technology
- min scanline = FLOOR ( min y ) - min scanline = FLOOR ( min y )
- max scanline = CEILING( max y ) - max scanline = CEILING( max y )
A problem arises with Bézier Arcs. While a segment is always A problem arises with Bézier Arcs. While a segment is always
necessarily y-monotonic (i.e., flat, ascending, or descending), necessarily y-monotonic (i.e., flat, ascending, or descending),
which makes extrema computations easy, the ascent of an arc can which makes extrema computations easy, the ascent of an arc can
vary between its control points. vary between its control points.
@ -384,7 +384,7 @@ II. Rendering Technology
* off curve * off curve
__-x--_ __-x--_
_-- -_ _-- -_
P1 _- - A non y-monotonic Bézier arc. P1 _- - A non y-monotonic Bézier arc.
# \ # \
- The arc goes from P1 to P3. - The arc goes from P1 to P3.
\ \
@ -431,7 +431,7 @@ II. Rendering Technology
* off curve * off curve
__-x--_ __-x--_
_-- -_ _-- -_
P1 _- - A non-y-monotonic Bézier arc. P1 _- - A non-y-monotonic Bézier arc.
# \ # \
- Here we have - Here we have
\ P2.y >= P1.y && \ P2.y >= P1.y &&
@ -445,10 +445,10 @@ II. Rendering Technology
but we rely on a different technique, which use will become but we rely on a different technique, which use will become
apparent soon. apparent soon.
Bézier arcs have the special property of being very easily Bézier arcs have the special property of being very easily
decomposed into two sub-arcs, which are themselves Bézier arcs. decomposed into two sub-arcs, which are themselves Bézier arcs.
Moreover, it is easy to prove that there is at most one vertical Moreover, it is easy to prove that there is at most one vertical
extremum on each Bézier arc (for second-degree curves; similar extremum on each Bézier arc (for second-degree curves; similar
conditions can be found for third-order arcs). conditions can be found for third-order arcs).
For instance, the following arc P1P2P3 can be decomposed into For instance, the following arc P1P2P3 can be decomposed into
@ -461,7 +461,7 @@ II. Rendering Technology
* off curve * off curve
original Bézier arc P1P2P3. original Bézier arc P1P2P3.
__---__ __---__
_-- --_ _-- --_
_- -_ _- -_
@ -492,7 +492,7 @@ II. Rendering Technology
tangent to the curve. tangent to the curve.
We have then decomposed a non-y-monotonic Bézier curve into two We have then decomposed a non-y-monotonic Bézier curve into two
smaller sub-arcs. Note that in the above drawing, both sub-arcs smaller sub-arcs. Note that in the above drawing, both sub-arcs
are monotonic, and that the extremum is then Q3=R1. However, in are monotonic, and that the extremum is then Q3=R1. However, in
a more general case, only one sub-arc is guaranteed to be a more general case, only one sub-arc is guaranteed to be
@ -530,9 +530,9 @@ II. Rendering Technology
In the case of segments, the computation is straightforward, In the case of segments, the computation is straightforward,
using the Euclidian algorithm (also known as Bresenham). using the Euclidian algorithm (also known as Bresenham).
However, for Bézier arcs, the job is a little more complicated. However, for Bézier arcs, the job is a little more complicated.
We assume that all Béziers that are part of a profile are the We assume that all Béziers that are part of a profile are the
result of flattening the curve, which means that they are all result of flattening the curve, which means that they are all
y-monotonic (ascending or descending, and never flat). We now y-monotonic (ascending or descending, and never flat). We now
have to compute the intersections of arcs with the profile's have to compute the intersections of arcs with the profile's
@ -631,5 +631,5 @@ accept it fully.
--- end of raster.txt --- --- end of raster.txt ---
Local Variables: Local Variables:
coding: latin-1 coding: utf-8
End: End: