Branch :
| Author | Commit | Date | CI | Message |
|---|---|---|---|---|
| 24370d67 | 2009-06-28 02:11:51 | Uff, another thinko. | ||
| e7389a44 | 2009-06-28 01:25:55 | [psaux, cff] Protect against nested `seac' calls. * include/freetype/internal/psaux.h (T1_Decoder), src/cff/cffgload.h (CFF_Decoder): Add `seac' boolean variable. * src/cff/cffgload.c (cff_operator_seac, cff_decoder_parse_charstrings), src/psaux/t1decode.c (t1operator_seac, t1_decoder_parse_charstrings): Use it. | ||
| 6bb34880 | 2009-06-28 00:43:37 | Thinko. * src/psaux/t1decode.c (t1operator_seac) [FT_CONFIG_OPTION_INCREMENTAL]: Test for existence of incremental interface. | ||
| 858abbed | 2009-06-26 06:15:41 | For warning messages, replace FT_ERROR with FT_TRACE0. FT_ERROR is now used only if a function produces a non-zero `error' value. Formatting, improving and harmonizing debug strings. | ||
| e15d9c52 | 2009-06-25 21:31:53 | Formatting etc. | ||
| 1e8bf583 | 2009-06-23 15:48:52 | Thinko. | ||
| 11cb8c36 | 2009-06-22 16:56:47 | Use 16.16 format while parsing Type 1 charstrings. This fixes Savannah bug #26867. Previously, only integers have been used which can lead to serious rounding errors. However, fractional values are only used internally; after the charstrings (of either Type 1 or 2) have been processed, the resulting coordinates get rounded to integers currently -- before applying scaling. This should be fixed; at the same time a new load flag should be introduced, to be used in combination with FT_LOAD_NO_SCALE, which indicates that font units are returned in 16.16 format. Similarly, the incremental interface should be extended to allow fractional values for metrics. * include/freetype/internal/psaux.h (T1_BuilderRec): Remove `shift' field. * include/freetype/internal/pshints.h (T1_Hints_SetStemFunc, T1_Hints_SetStem3Func): Use FT_Fixed for coordinates. * src/psaux/psobjs.c: Include FT_INTERNAL_CALC_H. (t1_build_add_point): Always convert fixed to integer. * src/psaux/t1decode.c (t1_decoder_parse_charstrings): Use 16.16 format everywhere (except for large integers followed by a `div'). [CAN_HANDLE_NON_INTEGRAL_T1_OPERANDS]: Remove #ifdef and activate code uncoditionally. Add support for random numbers and update remaining code accordingly; this should work now. (t1_operator_seac): Updated. * src/psaux/pshrec.c: Include FT_INTERNAL_CALC_H. (ps_hints_t1stem3, t1_hints_stem): Updated. * src/cid/cidgload.c: Include FT_INTERNAL_CALC_H. (cid_load_glyph) [FT_CONFIG_OPTION_INCREMENTAL], (cid_face_compute_max_advance, cid_slot_load_glyph): Updated. * src/type1/t1gload.c (T1_Parse_Glyph_And_Get_Char_String) [FT_CONFIG_OPTION_INCREMENTAL], (T1_Get_Advances, T1_Load_Glyph): Updated. * src/type1/t1load.c: Include FT_INTERNAL_CALC_H. * src/type1/t1objs.c (T1_Face_Init): Updated. | ||
| 1f540eff | 2009-06-20 13:24:08 | Remove unused variables. * include/freetype/internal/psaux.h (T1_BuilderRec), src/cff/cffgload.h (CFF_Builder): Remove `last'. Update all users. | ||
| 41821f8a | 2009-06-20 09:31:19 | [psaux] Check large integers while parsing charstrings. * src/psaux/t1decode.c (t1_decoder_parse_charstrings): Large integers must be followed by a `div' operator. | ||
| 86fa2ebc | 2009-06-19 14:56:26 | Improve debug messages for Type1 charstrings. * src/psaux/t1decode.c (t1_decoder_parse_charstrings): Emit newlines after instructions. Prettify output. | ||
| 04a7858c | 2009-04-30 20:32:31 | Make `seac' operator work correctly with incremental interface. SEAC (Single Encoding Accented Characters) are composed of (basically) two indices specifying two other glyphs, and a movement to position the accent properly with respect to the main glyph. To make it work with the incremental interface we now demand that the caller handles the encoding by itself. | ||
| e85baf4f | 2009-01-12 20:01:10 | Fix stdlib dependencies. Problem reported by Mickey Gabel <mickey@monfort.co.il>. * include/freetype/config/ftstdlib.h (ft_exit): Removed. Unused. * src/autofit/afhints.c, src/base/ftlcdfil.c, src/smooth/ftsmooth.c: s/memcpy/ft_memcpy/. * src/psaux/t1decode.c: s/memset/ft_memset/, s/memcpy/ft_memcpy/. | ||
| bcc750e5 | 2008-05-16 04:50:00 | * src/psaux/t1decode.c (t1_decoder_parse_charstrings) <op_closepath>: `closepath' without a path is a no-op, not an error (cf. the PS reference manual). Reported by Martin McBride. | ||
| 33db39e2 | 2007-06-08 06:30:29 | * src/sfnt/sfobjs.c (sfnt_load_face): Undo change from 2007-04-28. Fonts without a cmap must be handled correctly by FreeType (anything else would be a bug). * src/psaux/t1decode.c (t1_decoder_parse_charstrings) [FT_DEBUG_LEVEL_TRACE]: Improve tracing message. | ||
| a4d6a1c8 | 2006-07-19 09:54:56 | Move creation of field `buildchar' of T1_DecoderRec out of `t1_decoder_init' and let the caller of `t1_decoder_init' take care of it. Call the finisher for T1_Decoder in `cid_face_compute_max_advance' and `T1_Compute_Max_Advance'. * freetype2/include/freetype/internal/psaux.h (T1_DecoderRec): Remove field `face', add `len_buildchar'. * freetype2/include/freetype/internal/t1types.h (T1_FaceRec): Add field `buildchar'. * freetype2/src/cid/cidgload.c (cid_face_compute_max_advance): Call finisher for T1_Decoder. (cid_slot_load_glyph): Do not ignore failure when initializing the T1_Decoder. * freetype2/src/psaux/t1decode.c (t1_decoder_parse_charstrings): Updated. (t1_decoder_init): Remove initialization of fields `buildchar' and `len_buildchar'. (t1_decoder_done): Remove deallocation of field `buildchar'. * freetype/src/type1/t1gload.c (T1_Compute_Max_Advance): Initialize T1_Decoder's `buildchar' and `len_buildchar'; call finisher for T1_Decoder. (T1_Load_Glyph): Initialize T1_Decoder's `buildchar' and `len_buildchar'; make sure to call finisher for T1_Decoder even in case of error. * freetype2/src/type1/t1load.c (T1_Open_Face): Allocate new field `buildchar' of T1_FaceRec. * freetype2/src/type1/t1objs.c (T1_Face_Done): Free new field `buildchar' of T1_FaceRec. | ||
| 1a380e02 | 2006-07-14 18:28:08 | * freetype2/include/freetype/internal/psaux.h: New macros IS_PS_NEWLINE, IS_PS_SPACE, IS_PS_SPECIAL, IS_PS_DELIM, IS_PS_DIGIT, IS_PS_XDIGIT, and IS_PS_BASE85 (from freetype2/src/psaux/psconv.h). (T1_FieldLocation): Add T1_FIELD_LOCATION_LOADER, T1_FIELD_LOCATION_FACE, and T1_FIELD_LOCATION_BLEND. (T1_DecoderRec): New fields `buildchar' and `face'. (IS_PS_TOKEN): New macro. * freetype2/include/freetype/internal/t1types.h (T1_FaceRec): New fields `ndv_idx', `cdv_idx', and `len_buildchar'. * freetype2/include/freetype/t1tables.h (PS_BlendRec): New fields `default_design_vector' and `num_default_design_vector'. * freetype2/src/psaux/psconv.h: Move macros IS_PS_NEWLINE, IS_PS_SPACE, IS_PS_SPECIAL, IS_PS_DELIM, IS_PS_DIGIT, IS_PS_XDIGIT, and IS_PS_BASE85 to freetype2/include/freetype/internal/psaux.h. * freetype2/src/psaux/psobjs.c (ps_parser_to_token_array): Allow `token' argument to be NULL if we want only to count the number of tokens. (ps_tocoordarray): Allow `coords' argument to be NULL if we just want to skip the array. (ps_tofixedarray): Allow `values' argument to be NULL if we just want to skip the array. * freetype2/src/psaux/t1decode.c (t1_decoder_parse_charstrings): Add support for (partially commented out) othersubrs 19-25, 27, and 28. (t1_decoder_init): Initialize new fields `face' and `buildchar'. (t1_decoder_done): Release new field `buildchar'. * freetype2/src/type1/t1load.c (parse_buildchar, parse_private): New functions. (t1_keywords): Register them. (t1_allocate_blend): Updated. (t1_load_keyword): Handle field types T1_FIELD_LOCATION_LOADER, T1_FIELD_LOCATION_FACE and T1_FIELD_LOCATION_BLEND. (parse_dict): Remove `keyword_flags' argument. Use new macro IS_PS_TOKEN. Changed function so that later PostScript definitions override earlier ones. (t1_init_loader): Initialize new field `keywords_encountered'. (T1_Open_Face): Initialize new fields `ndv_idx', `cdv_idx', and `len_buildchar'. Remove `keywords_flags'. * freetype2/src/type1/t1load.h (T1_LoaderRect): New field `keywords_encountered'. (T1_PRIVATE, T1_FONTDIR_AFTER_PRIVATE): New macros. * freetype2/src/type1/t1tokens.h [!T1_CONFIG_OPTION_NO_MM_SUPPORT]: New entries for parsing /NDV, /CDV, and /DesignVector. | ||
| 24703f8b | 2006-06-26 19:12:51 | * src/psaux/t1decode.c (T1_Operator, t1_args_count): Add opcode 15. (t1_decoder_parse_charstrings): Operator with opcode 15 pops its two arguments. Handle the case where the pops of an othersubr may be part of a subroutine. Handle unknown othersubrs gracefully: count their operands and let the following pop operators push the operands as the results onto the Type1 stack. Improve handling of setcurrentpoint opcode. | ||
| c9114b99 | 2005-02-10 08:18:27 | * builds/unix/freetype-config.in: Add new flag `--ftversion' to return the FreeType version. Suggested by George Williams <gww@silcom.com>. * docs/CHANGES: Updated. * src/otvalid/otvmod.c (otv_validate): Deallocate arrays in case of error. Reported by YAMANO-UCHI Hidetoshi <mer@din.or.jp>. * src/psaux/t1decode.c (t1_decoder_parse_charstrings) <op_closepath>: Accept `T1_Parse_Have_Moveto' state also which can happen in empty glyphs. Reported by Ian Brown <ian.brown@printsoft.de>. | ||
| efd4e877 | 2004-05-13 12:59:59 | * include/freetype/internal/psaux.h (T1_ParseState): New enumeration. (T1_BuilderRec): Replace `path_begun' with `parse_state'. Remove `error'. * src/psaux/t1decode.c (t1_decoder_parse_charstrings): Replace `Memory_Error' with `Fail' and update all users. Don't use `builder->error'. Replace `path_begun' with `parse_state' and check parsing states. * src/psaux/psobjs.c (t1_builder_init, t1_builder_start_point): Replace `path_begun' with `parse_state' and check parsing states. | ||
| 5972e9ab | 2004-02-01 00:49:56 | * src/cff/cffgload.c (cff_operator_seac): Fix magnitude of accent offset. Update code similarly to the seac support for Type 1 fonts. (cff_decoder_parse_charstrings) <cff_op_endchar>: Fix magnitude of accent offset. Don't hint glyphs twice if seac is emulated. <cff_op_flex>: Assign correct point tags. * docs/CHANGES: Updated. * src/type1/t1parse.c (T1_Get_Private_Dict): Use FT_MEM_MOVE, not FT_MEM_COPY, for copying the private dict. * src/type1/t1load.c (parse_subrs): Assign number of subrs only in first run. (parse_charstrings): Parse /CharStrings in second run without assigning values. (parse_dict): Skip all /CharStrings arrays but the first. We need this for non-standard fonts like `Optima' which have different outlines depending on the resolution. Note that there is no guarantee that we get fitting /Subrs and /CharStrings arrays; this can only be done by a real PS interpreter. | ||
| 7760595f | 2003-10-29 21:43:52 | * include/freetype/internal/bdftypes.h: removed obsolete header * include/freetype/internal/cfftypes.h, src/cff/cfftypes.h, src/cff/cffload.h, src/cff/cffobjs.h, src/cff/cffparse.h, include/freetype/internal/services/svbdf.h: moving "cfftypes.h" from 'include/freetype/internal' to 'src/cff' since no other modules needs to known about these types * include/freetype/internal/t42types.h, include/freetype/internal/internal.h, src/type42/t42objs.h, src/type42/t42drivr.c, src/type42/t42types.h: moving "t42types.h" from 'include/freetype/internal' to 'src/type42' since no other modules needs to known about these types * src/gzip/infblock.c: removing compiler warning * include/freetype/internal/services/svpsinfo.h, include/freetype/internal/ftserv.h, src/cff/cffdrivr.c, src/cid/ciddrivr.c, src/type1/t1driver.c, src/type42/t42drivr.c, src/base/fttype1.c: migrating to FT_SERVICE_ID_POSTSCRIPT_INFO defined in "svpsinfo.h", removing some sad hacks. | ||
| ed3a7d7b | 2003-10-07 20:06:35 | * src/type1/t1load.c (parse_dict): Handle synthetic fonts properly. (parse_charstrings): Copy correct number of characters into `name_table'. | ||
| b72d8a85 | 2003-09-29 20:33:37 | * include/freetype/internal/services/svpsname.h (added), include/freetype/internal/psnames.h (removed), include/freetype/internal/internal.h (FT_SERVICE_POSTSCRIPT_NAMES): added new service to handle glyph name dictionaries, replacing the old internal header named "psnames.h" by "services/svpsname.h" note that this is different from "services/svpostnm.h" which only handles the retrieval of Postscript font name for a given face. (should we merge these two services into a single header ??) * include/freetype/internal/ftserv.h: adding FT_FACE_FIND_GLOBAL_SERVICE (used to lookup a service globally, instead of only within the current module) * include/freetype/internal/ftobjs.h, src/base/ftobjs.c: adding the new base function ft_module_get_service | ||
| 73861976 | 2003-06-05 04:31:05 | * include/freetype/internal/ftdriver.h, include/freetype/internal/ftobjs.h, include/freetype/internal/psaux.h, src/cid/cidgload.c, src/psaux/psobjs.c, src/psaux/t1decode.c, src/psaux/psobjs.h, src/pshinter/pshrec.c, src/pshinter/pshalgo.c, src/psnames/psmodule.c, src/raster/ftraster.c, src/sfnt/sfobjs.c, src/smooth/ftgrays.c, src/smooth/ftsmooth.c, src/truetype/ttobjs.c, src/truetype/ttdriver.c, src/truetype/ttgload.c, src/type1/t1afm.c, src/type1/t1gload.c, src/type1/t1gload.h, src/type1/t1load.c, src/type1/t1objs.c, src/type42/t42parse.c, src/type42/t42parse.h: Many casts and slight argument type changes to make it work with a 16bit compiler. | ||
| 8b884660 | 2003-06-03 11:51:43 | * src/autohint/ahhint.c (ah_hinter_hint_edges): Removed. Just a wrapper for ah_hint_edges. (ah_hint_edges): Renamed to... (ah_hinter_hint_edges): This. * src/base/ftobjs.c (FT_Set_Hint_Flags): Removed. Unused. * include/freetype/internal/ftobjs.h (FT_Face_InternalRec), include/freetype/internal/psaux.h (T1_DecoderRec), src/cff/cffgload.h (CFF_Builder): Remove `hint_flags' field. Unused. * src/cff/cffgload.c (cff_builder_init): Updated. (cff_decoder_parse_charstrings) <cff_op_endchar>: Call hinter->apply with decoder->hint_mode instead of builder->hint_flags. * src/psaux/t1decode.c (t1_decoder_init): Updated. * src/base/ftstroker.c (ft_stroke_border_export): s/index/idx/. * src/sfnt/sfobjs.c (sfnt_load_face): Commented out code which increased root->height by 15% if the line gap was zero. There exist fonts (containing e.g. form drawing characters) which intentionally have a zero line gap value. | ||
| 68e9f927 | 2002-09-27 11:09:23 | * src/sfnt/ttpost.c (load_post_names, tt_face_free_ps_names, tt_face_get_ps_name): Replace switch statement with if clauses to make it more portable. * src/cff/cffobjs.c (cff_face_init): Ditto. * include/freetype/ftmodule.h (FT_Module_Class): Use `FT_Long' for `module_size'. * include/freetype/ftrender.h (FT_Glyph_Class_): Use `FT_Long' for `glyph_size'. * src/base/ftobjs.c (FT_Render_Glyph): Change second parameter to `FT_Render_Mode'. (FT_Render_Glyph_Internal): Change third parameter to `FT_Render_Mode'. * src/base/ftglyph.c (FT_Glyph_To_Bitmap): Change second parameter to `FT_Render_Mode'. * src/raster/ftrend1.c (ft_raster1_render): Change third parameter to `FT_Render_Mode'. * src/smooth/ftsmooth.c (ft_smooth_render, ft_smooth_render_lcd, ft_smooth_render_lcd_v): Ditto. (ft_smooth_render_generic): Change third and fifth parameter to `FT_Render_Mode'. * include/freetype/freetype.h, include/freetype/internal/ftobjs.h, include/freetype/ftglyph.h: Updated. * src/cff/cffdrivr.c (Load_Glyph), src/pcf/pcfdriver.c (PCF_Glyph_Load), src/pfr/pfrobjs.c (pfr_slot_load), src/winfonts/winfnt.c (FNT_Load_Glyph), src/t42/t42objs.c (T42_GlyphSlot_Load), src/bdf/bdfdrivr.c (BDF_Glyph_Load): Change fourth parameter to `FT_Int32'. * src/pfr/pfrobjs.c (pfr_face_init): Add two missing parameters and declare them as unused. * src/cid/cidparse.h (CID_Parser): Use FT_Long for `postscript_len'. * src/psnames/psnames.h (PS_Unicode_Value_Func): Change return value to FT_UInt32. * src/psnames/psmodule.c (ps_unicode_value, ps_build_unicode_table): Updated accordingly. * src/cff/cffdrivr.c (Get_Kerning): Use FT_Long for `middle'. (cff_get_glyph_name): Use cast for result of ft_strlen. * src/cff/cffparse.c (cff_parse_real): User cast for assigning `exp'. * src/cff/cffload.c (cff_index_get_pointers): Use FT_ULong for some local variables. (cff_charset_load, cff_encoding_load): Use casts to FT_UInt for some switch statements. (cff_font_load): Use cast in call to CFF_Load_FD_Select. * src/cff/cffobjs.c (cff_size_init): Use more casts. (cff_face_init): Use FT_Int32 for `flags'. * src/cff/cffgload.c (cff_operator_seac): Use cast for assigning `adx' and `ady'. (cff_decoder_parse_charstrings): Use FT_ULong for third parameter. Use more casts. * src/cff/cffcmap.c (cff_cmap_unicode_init): Use cast for `count'. * src/cid/cidload.c (cid_read_subrs): Use FT_ULong for `len'. * src/cid/cidgload.c (cid_load_glyph): Add missing cast for `cid_get_offset'. * src/psaux/t1decode.c (t1_decoder_parse_charstrings) <18>: Use cast for `num_points'. (t1_decoder_init): Use cast for assigning `decoder->num_glyphs'. * src/base/ftdebug.c (ft_debug_init): Use FT_Int. * include/freetype/internal/ftdriver.h (FT_Slot_LoadFunc): Use `FT_Int32' for fourth parameter. * src/base/ftobjs.c (open_face): Use cast for calling clazz->init_face. * src/raster/ftraster.c (Set_High_Precision): Use `1' instead of `1L'. (Finalize_Profile_Table, Line_Up, ft_black_init): Use casts. * src/raster/ftrend1.c (ft_raster1_render): Ditto. * src/sfnt/sfnt_dir_check: Compare `magic' with unsigned long constant. * builds/amiga/include/freetype/config/ftmodule.h: Updated. | ||
| 6b5c669b | 2002-09-05 15:10:54 | * src/cid/cidobjs.c (CID_Size_Init): Renamed to... (cid_size_init): This. * src/psaux/psobjs.c (T1_Builder_Add_Point1): Renamed to... (t1_builder_add_point1): This. Updated all affected code. * src/pshinter/pshalgo3.c (psh3_hint_align): Fix compiler warnings. * src/type1/t1gload.c (T1_Compute_Max_Advance): Ditto. Formatting, minor doc fixes. | ||
| d1245c0d | 2002-08-27 22:34:20 | updating sources to support the new FT_LOAD_TARGET_ constants to support target-specific hinting | ||
| b08fe2dc | 2002-08-27 20:20:29 | * massive re-formatting changes to many, many source files. I don't want to list them all here. The operations performed were all logical transformations of the sources: - trying to convert all enums and constants to CAPITALIZED_STYLE, with #define definitions like #define my_old_constants MY_NEW_CONSTANT - big, big update of the documentation comments * include/freetype/freetype.h, src/base/ftobjs.c, src/smooth/ftsmooth.c, include/freetype/ftimage.h: adding support for LCD-optimized rendering though the new constants/enums: FT_RENDER_MODE_LCD, FT_RENDER_MODE_LCD_V FT_PIXEL_MODE_LCD, FT_PIXEL_MODE_LCD_V this is still work in progress, don't expect everything to work correctly though most of the features have been implemented. * adding new FT_LOAD_XXX flags, used to specify both hinting and rendering targets: FT_LOAD_TARGET_NORMAL :: anti-aliased hinting & rendering FT_LOAD_TARGET_MONO :: monochrome bitmaps FT_LOAD_TARGET_LCD :: horizontal RGB/BGR decimated hinting & rendering FT_LOAD_TARGET_LCD_V :: vertical RGB/BGR decimated hinting & rendering note that FT_LOAD_TARGET_NORMAL is 0, which means that the default behaviour of the font engine is _unchanged_. | ||
| b3d5e9cf | 2002-07-28 05:05:24 | s/ft_memset/FT_MEM_SET/. s/FT_MEM_SET/FT_MEM_ZERO/ where appropriate. | ||
| 27c322e9 | 2002-07-08 22:26:11 | * include/freetype/freetype.h, src/base/ftobjs.h, freetype/internal/ftobjs.h, freetype/internal/psaux.h, freetype/internal/pshints.h, src/psaux/t1decode.c, src/cff/cffgload.h, src/cff/cffgload.c, src/pshinter/pshalgo1.h, src/pshinter/pshalgo1.c, src/pshinter/pshalgo2.h, src/pshinter/pshalgo2.c, src/pshinter/pshalgo3.h, src/pshinter/pshalgo3.c: Adding support for hinter-specific bit flags, and the new FT_Set_Hint_Flags high-level API | ||
| b1859049 | 2002-05-22 04:53:25 | * src/psaux/psobjs.c (T1Radix): New function. (t1_toint): Use it to handle numbers in radix format. * src/psaux/t1decode.c (T1_Decoder_Parse_Charstrings): Add dummy for undocumented, obsolete opcode 15. | ||
| 94ffae52 | 2002-04-14 00:54:32 | * src/cff/cffgload.c (CFF_Parse_CharStrings): s/rand/Rand/ to avoid compiler warning. formatting/fixing ChangeLog | ||
| d15bc0d1 | 2002-04-12 09:31:48 | * README.UNX: updated the Unix-specific quick-compilation guide to warn about the GNU Make requirement at compile time.. * include/freetype/config/ftstdlib.h, include/freetype/config/ftconfig.h, include/freetype/config/ftheader.h, include/freetype/internal/ftmemory.h, include/freetype/internal/ftobjs.h, src/autohint/ahoptim.c, src/base/ftdbgmem.c, src/base/ftdebug.c, src/base/ftmac.c, src/base/ftobjs.c, src/base/ftsystem.c, src/cache/ftcimage.c, src/cache/ftcsbits.c, src/cff/cffdriver.c, src/cff/cffload.c, src/cff/cffobjs.c, src/cid/cidload.c, src/cid/cidparse.c, src/cid/cidriver.c, src/pcf/pcfdriver.c, src/pcf/pcfread.c, src/psaux/t1cmap.c, src/psaux/t1decode.c, src/pshinter/pshalgo1.c, src/pshinter/pshalgo2.c, src/pshinter/pshrec.c, src/psnames/psmodule.c, src/raster/ftraster.c, src/sfnt/sfdriver.c, src/sfnt/ttload.c, src/sfnt/ttpost.c, src/smooth/ftgrays.c, src/type1/t1afm.c, src/type1/t1driver.c, src/type1/t1gload.c, src/type1/t1load.c, src/type1/t1objs.c, src/type1/t1parse.c: added the new configuration file "ftstdlib.h" used to define aliases for all ISO C library functions used by the engine (e.g. strlen, qsort, setjmp, etc...) this eases the porting of FreeType 2 to exotic environments like XFree86 modules/extensions.. also removed many #include <string.h>, #include <stdlib.h>, etc... from the engine's sources where they're not needed.. | ||
| 545a75fd | 2002-03-31 11:18:15 | * src/psaux/t1cmap.c: s/index/idx/. * src/psaux/t1decode.c (T1_Decoder_Parse_Charstrings): Fix debug messages. | ||
| e459d742 | 2002-03-22 13:52:37 | * include/freetype/internal/ftmemory.h, and a lot of other files !!: changed the names of memory macros. Examples: MEM_Set => FT_MEM_SET MEM_Copy => FT_MEM_COPY MEM_Move => FT_MEM_MOVE ALLOC => FT_ALLOC FREE => FT_FREE REALLOC = >FT_REALLOC FT_NEW was introduced to allocate a new object from a _typed_ pointer.. note that ALLOC_ARRAY and REALLOC_ARRAY have been replaced by FT_NEW_ARRAY and FT_RENEW_ARRAY which take _typed_ pointer arguments. This results in _lots_ of sources being changed, but makes the code more generic and less error-prone.. | ||
| eba5ad4b | 2002-03-14 12:56:35 | no message | ||
| 429978bd | 2002-03-14 10:09:35 | * include/freetype/internal/psaux.h, src/cid/cidload.c, src/cidtoken.h, src/psaux/psobjs.c, src/psaux/psobjs.h, src/psaux/t1decode.c, stc/type1/t1load.c, src/type1/t1tokens.h: updated common Postscript type definitions | ||
| 0d9165e1 | 2002-03-07 21:59:59 | * src/base/ftdbgmem.c (ft_mem_table_resize, ft_mem_table_new, ft_mem_table_set, ft_mem_debug_alloc, ft_mem_debug_free, ft_mem_debug_realloc, ft_mem_debug_done, FT_Alloc_Debug, FT_Realloc_Debug, FT_Free_Debug): Fix compiler warnings. * src/base/ftcalc.c (FT_MulFix): Ditto. * src/cff/cffdrivr.c (cff_get_name_index): Ditto. * src/cff/cffobjs.c (CFF_Size_Get_Global_Funcs, CFF_Size_Init, CFF_GlyphSlot_Init): Ditto. * src/cid/cidobjs.c (CID_GlyphSlot_Init, CID_Size_Get_Globals_Funcs): Ditto. * src/type1/t1objs.c (T1_Size_Get_Globals_Funcs, T1_GlyphSlot_Init): Ditto. * src/pshinter/pshmod.c (pshinter_interface): Use `static const'. * src/winfonts/winfnt.c (FNT_Get_Next_Char): Remove unused variables. * include/freetype/internal/psaux.h (T1_Builder_Funcs): Renamed to... (T1_Builder_FuncsRec): This. (T1_Builder_Funcs): New typedef. (PSAux_Interface): Remove compiler warnings. * src/psaux/psauxmod.c (t1_builder_funcs), src/psaux/psobjs.h (t1_builder_funcs): Updated. * src/pshinter/pshglob.h (PSH_Blue_Align): Replaced with ... (PSH_BLUE_ALIGN_{NONE,TOP,BOT}): New defines. (PSH_AlignmentRec): Updated. * include/freetype/internal/ftstream.h (GET_Char, GET_Byte): Fix typo. * include/freetype/internal/ftgloadr.h (FT_SubGlyph): Ditto. * src/base/ftstream (FT_Get_Char): Rename to... (FT_Stream_Get_Char): This. * src/base/ftnames.c (FT_Get_Sfnt_Name): s/index/idx/ -- `index' is a built-in function in gcc, causing warning messages with gcc 3.0. * src/autohint/ahglyph.c (ah_outline_load): Ditto. * src/autohint/ahglobal.c (ah_hinter_compute_blues): Ditto. * src/cache/ftcmanag.c (ftc_family_table_alloc, ftc_family_table_free, FTC_Manager_Done, FTC_Manager_Register_Cache): Ditto. * src/cff/cffload.c (cff_new_index, cff_done_index, cff_explicit_index, CFF_Access_Element, CFF_Forget_Element, CFF_Get_Name, CFF_Get_String, CFF_Load_SubFont, CFF_Load_Font, CFF_Done_Font): Ditto. * src/psaux/psobjs.c (PS_Table_Add, PS_Parser_LoadField): Ditto. * src/psaux/t1decode.c (T1_Decoder_Parse_Charstrings): Ditto. * src/pshinter/pshrec.c (ps_mask_test_bit, ps_mask_clear_bit, ps_mask_set_bit, ps_dimension_add_t1stem, ps_hints_t1stem3, * src/pshinter/pshalgo1.c (psh1_hint_table_record, psh1_hint_table_record_mask, psh1_hint_table_activate_mask): Ditto. * src/pshinter/pshalgo2.c (psh2_hint_table_record, psh2_hint_table_record_mask, psh2_hint_table_activate_mask): Ditto. * src/sfnt/ttpost.c (Load_Format_20, Load_Format_25, TT_Get_PS_Name): Ditto. * src/truetype/ttgload.c (TT_Get_Metrics, Get_HMetrics, load_truetype_glyph): Ditto. * src/type1/t1load.c (parse_subrs, T1_Open_Face): Ditto. * src/type1/t1afm.c (T1_Get_Kerning): Ditto. * include/freetype/cache/ftcmanag.h (ftc_family_table_free): Ditto. | ||
| bc82f1bb | 2002-03-01 02:26:22 | * include/freetype/ftconfig.h: changed FT_LOCAL xxxx to FT_LOCAL( xxxx ) everywhere in the source. Sames goes for FT_LOCAL_DEF xxxx translated into FT_LOCAL_DEF( xxxxx ) | ||
| 29644179 | 2002-02-28 18:59:37 | still more logical transformations. This time, some public API headers have 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.. | ||
| 4e7eeeec | 2002-02-28 16:10:29 | yet another logical transformation of the internals to make them more consistent and understandable.. mainly, changing things like PS_Table => PS_TableRec + *PS_Table | ||
| 4d57024d | 2002-02-24 02:59:24 | * moving all code related to glyph loaders to "internal/ftgloadr.h" and "src/base/ftgloadr.c". Note also that the type "FT_GlyphLoader" is now a pointer to the structure "FT_GlyphLoaderRec".. | ||
| b5349a9b | 2002-02-19 16:30:15 | * builds/freetype.mk (FT_CFLAGS): Use $(INCLUDE_FLAGS) first. * src/cache/ftccache.c (ftc_cache_resize): Mark `error' as unused to avoid compiler warning. * src/cff/cffload.c (CFF_Get_String): Ditto. * src/cff/cffobjs.c (CFF_StrCopy): Ditto. * src/psaux/psobjs.c (PS_Table_Done): Ditto. * src/pcf/pcfread.c (pcf_seek_to_table_type): Ditto. * src/sfnt/sfdriver.c (get_sfnt_postscript_name): Ditto. (pcf_get_bitmaps): The same for `sizebitmaps'. * src/psaux/t1decode.c (T1_Decode_Parse_Charstrings): The same for `orig_y'. (t1operator_seac): Comment out more dead code. * src/pshinter/pshalgo2.c (ps2_hints_apply): Add `DEBUG_HINTER' conditional. * src/truetype/ttgload.c (TT_Process_Simple_Glyph, load_truetype_glyph): Add `TT_CONFIG_OPTION_BYTECODE_INTERPRETER' conditional. | ||
| 7c0d2081 | 2001-12-21 15:59:43 | * src/cff/cffgload.c, src/psaux/t1decode.c, src/pshinter/pshrec.c, src/pshinter/ahalgo2.c, src/pshinter/pshglob.h: fixed a bug where the X and Y axis where inversed in the postscript hinter. this caused problem when displaying on non-square surfaces.. | ||
| c3b21608 | 2001-12-05 01:22:05 | Formatting. Cleaning up of ChangeLog. * docs/license.txt: s/X Windows/X Window System/. * src/raster/ftraster.c: Fix definition condition of MEM_Set(). * src/smooth/ftgrays.c (M_Y): Change value to 192. * src/base/ftdbgmem.c (ft_mem_table_destroy): Fix printf() parameter. Remove unused variable. * src/cache/ftcimage.c (ftc_image_node_init, ftc_image_node_compare): Remove unused variables. * src/cache/ftcsbits.c (ftc_sbit_node_weight): Remove unused variable. * src/raster/ftraster.c (MEM_Set): Move definition down to avoid compiler warning. * src/autohint/ahhint.c (ah_hinter_hint_edges): Use UNUSED() to avoid compiler warnings. * src/pcf/pcfread.c (tableNames): Use `const'. (pcf_read_TOC): Change counter name to avoid compiler warning. Use `const'. * src/pshinter/pshrec.c (ps_hints_close): Remove redundant declaration. * src/pshinter/pshalgo1.c (psh1_hint_table_init): Rename variables to avoid shadowing. * src/pshinter/pshalgo2.c (psh2_hint_table_activate_mask): Ditto. * src/type1/t1objs.h: Remove double declarations of `T1_Size_Init()' and `T1_Size_Done()'. | ||
| 5893c1bb | 2001-10-18 11:49:26 | add support for new postscript hinter | ||
| 415235df | 2001-06-28 17:49:10 | finishing function header formatting updating copyrights | ||
| 93616ecb | 2001-06-27 19:46:12 | next round in function header formatting | ||
| 8eb0353f | 2001-06-19 23:03:41 | Formatting. | ||
| 8edbcabc | 2001-06-19 08:28:24 | - updated doc for FT_New_Memory_Face - removed lots of compiler warnings in lint-style warning modes (/W4 with Visual C++) | ||
| cf24d515 | 2001-06-18 14:23:45 | Minor cleanups to remove compiler warnings. * include/freetype/cache/ftcmanag.h (FTC_MAX_BYTES_DEFAULT): Use `L' for constant. * include/freetype/config/ftoption.h (FT_RENDER_POOL_SIZE): Ditto. * src/base/ftcalc.c (FT_MulDiv): Use `L' for constant. * src/base/ftglyph.c (FT_Glyph_Get_CBox): Remove `error' variable. * src/base/fttrigon.c (ft_trig_arctan_table): Use `L' for constants. * src/base/ftobjs.c (FT_Done_Size): Fix return value. (FT_Set_Char_Size, FT_Set_Pixel_Sizes, FT_Get_Kerning): Remove unused `memory' variable. * src/autohint/ahglyph.c (ah_get_orientation): Use `L' for constant. * src/autohint/ahhint.c (ah_hint_edges_3, ah_hinter_align_edge_points): Remove unused `before' and `after' variables. (ah_hinter_align_weak_points): Remove unused `edge_limit' variable. (ah_hinter_load): Remove unused `new_advance', `start_contour', and `metrics' variables. * src/cff/cffload.c (CFF_Load_Encoding): Remove dead code to avoid compiler warning. * src/cff/cffobjs.c (CFF_Init_Face): Remove unused `base_offset' variable. * src/cff/cffgload.c (CFF_Parse_CharStrings): Remove unused `outline' variable. (cff_compute_bias): Use `U' for constant. * src/cid/cidload.c (cid_decrypt): Ditto. * src/psaux/psobjs.c (T1_Decrypt): Ditto. * src/psaux/t1decode.c (T1_Decoder_Parse_CharStrings): Ditto. * src/sfnt/ttload.c (TT_Load_Kern): Remove unused `version' variable. * src/sfnt/ttsbit.c (TT_Load_SBit_Image): Remove unused `top' variable. * src/truetype/ttgload.c (load_truetype_glyph): Remove unused `num_contours' and `ins_offset' variables. (compute_glyph_metrics): Remove unused `Top' and `x_scale' variables. (TT_Load_Glyph): Remove unused `memory' variable. * src/smooth/ftgrays.c (grays_raster_render): Use `L' for constants. | ||
| 1f7f0e87 | 2001-06-06 17:30:41 | Complete redesign of error codes. Please check ftmoderr.h for more details. * include/freetype/internal/cfferrs.h, include/freetype/internal/tterrors.h, include/freetype/internal/t1errors.h: Removed. Replaced with files local to the module. All extra error codes have been moved to `fterrors.h'. * src/sfnt/ttpost.h: Move error codes to `fterrors.h'. * src/autohint/aherrors.h, src/cache/ftcerror.h, src/cff/cfferrs.h, src/cid/ciderrs.h, src/pcf/pcferror.h, src/psaux/psauxerr.h, src/psnames/psnamerr.h, src/raster/rasterrs.h, src/sfnt/sferrors.h, src/smooth/ftsmerrs.h, src/truetype/tterrors.h, src/type1/t1errors.h, src/winfonts/fnterrs.h: New files defining the error names for the module it belongs to. * include/freetype/ftmoderr.h: New file, defining the module error offsets. Its structure is similar to `fterrors.h'. * include/freetype/fterrors.h (FT_NOERRORDEF): New macro. (FT_ERRORDEF): Redefined to use module error offsets. All internal error codes are now public; unused error codes have been removed, some are new. * include/freetype/config/ftheader.h (FT_MODULE_ERRORS_H): New macro. * include/freetype/config/ftoption.h (FT_CONFIG_OPTION_USE_MODULE_ERRORS): New macro. All other source files have been updated to use the new error codes; some already existing (internal) error codes local to a module have been renamed to give them the same name as in the base module. All make files have been updated to include the local error files. * src/cid/cidtokens.h: Replaced with... * src/cid/cidtoken.h: This file for 8+3 consistency. * src/raster/ftraster.c: Use macros for header file names. | ||
| 1429db6c | 2001-04-02 23:54:01 | * README: Formatting. * Jamfile: Fix typo. * src/cff/cffparse.c: Move error code #defines to... * include/freetype/internal/cfferrs.h: This file. * src/cff/cffdrivr.c, src/cff/cffobjs.c, src/cff/cffload.c: Replaced `FT_Err_*' with `CFF_Err_*'. * src/cid/cidparse.c: Replaced `FT_Err_*' with `T1_Err_*'. * src/psaux/psobjs.c, src/psaux/t1decode.c: Ditto. * src/sfnt/sfobcs.c, src/sfnt/ttload.c: Replaced `FT_Err_*' with `TT_Err_*'. * src/truetype/ttgload.c, src/truetype/ttobjs.c: Ditto. * src/type1/t1gload.c, src/type1/t1load.c, src/type1/t1objs.c, src/type1/t1parse.c: Replaced `FT_Err_*' with `T1_Err_*'. * include/freetype/internal/cfferrs.h: Add `CFF_Err_Unknown_File_Format'. * include/freetype/internal/t1errors.h: Add `T1_Err_Unknown_File_Format'. * include/freetype/internal/tterrors.h: Add `TT_Err_Unknown_File_Format'. * src/cff/cffload.h: Add `cff_*_encoding' and `cff_*_charset' references. * src/psaux/psobjs.c: Include `FT_INTERNAL_TYPE1_ERRORS_H'. * src/cff/cffobjs.c (CFF_Init_Face, CFF_Done_Face): Use FT_LOCAL_DEF. * src/cid/cidobjs.c (CID_Done_Driver): Ditto. * src/trutype/ttobjs.c (TT_Init_Face, TT_Done_Face, TT_Init_Size): Ditto. * src/type1/t1objs.c (T1_Done_Driver): Ditto. * src/pcf/pcfdriver.c (PCF_Done_Face): Ditto. * src/pcf/pcf.h: Use FT_LOCAL for `PCF_Done_Face'. | ||
| 8d3a401f | 2001-03-20 11:14:24 | * builds/*/*-def.mk: changed the objects directory from "obj" to "objs" * include/freetype/config/ftheader.h: removed obsolete macros like FT_SOURCE_FILE, etc.. and added cache-specific macro definitions that were previously defined in <freetype/ftcache.h>. Added comments to be included in a new API Reference section. * src/*/*: removed the use of FT_SOURCE_FILE, etc.. now, each component needs to added its own directory to the include path at compile time. Modified all "rules.mk" and "descrip.mms" accordingly.. | ||
| 9a8b536f | 2001-03-12 22:33:52 | * src/psaux/t1decode.c (T1_Decoder_Parse_Charstrings): Fix error messages. * INSTALL, docs/BUILD: We need GNU make 3.78.1 or newer. | ||
| 9b59f2c3 | 2001-03-12 01:42:38 | In function T1_Decoder_Parse_Charstrings, take into account lenIV seed bytes at the start of a decrypted subroutine. | ||
| 170c0d4c | 2000-12-13 19:55:11 | * include/freetype/config/ft2build.h, include/freetype/internal/internal.h: fixed header inclusion macros to use direct definitions. This is the only way to do these things in a portable way :-( The rest of the code should follow shortly though everything compiles now.. * builds/compiler/intelc.mk, builds/compiler/watcom.mk, builds/win32/detect.mk: added support for the Intel C/C++ compiler, as well as _preliminary_ (read: doesn't work !!) support for Watcom. Also added a new setup target. Type "make setup list" for a list of supported command-line compilers on Win32.. | ||
| d5c1b27d | 2000-12-12 22:28:12 | * include/freetype/config/ft2build.h (FT2_ROOT, FT2_CONFIG_ROOT): Removed. ANSI C doesn't (explicitly) allow macro expansion in arguments using `##'. (FT2_PUBLIC_FILE, FT2_CONFIG_FILE, FT2_INTERNAL_FILE): Use directory names directly. Make them configurable. Use `##' to strip leading and trailing spaces from arguments. * builds/unix/ft2unix.h: Adapted. * src/base/ftsystem.c (ft_alloc, ft_realloc, ft_free, ft_io_stream, ft_close_stream): Use FT_CALLBACK_DEF. * builds/unix/ftsystem.c: Use new header scheme. (FT_Done_Memory): Use free() from FT_Memory structure. * src/base/ftinit.c, src/base/ftmac.c: Header scheme fixes. * include/freetype/config/ft2build.h (FT2_CONFIG_ROOT, FT2_PUBLIC_FILE, FT2_CONFIG_FILE, FT2_INTERNAL_FILE, FT_SOURCE_FILE): Use `##' operator to be really ANSI C compliant. | ||
| cc069beb | 2000-12-08 16:17:16 | cleanups | ||
| 19ed8afe | 2000-12-08 02:42:29 | - updated all source files to adhere to the new inclusion scheme - the CFF loader now loads the encodings and charset tables though doesn't use them for now | ||
| 33d02368 | 2000-12-06 16:31:30 | * builds/module.mk: Replaced `xxx #' with `xxx$(space). * builds/os2/detekt.mk, builds/win32/detekt.mk: Moved comment to avoid trailing spaces in variable. * builds/freetype.mk: Use $(D) instead of $D to make statement more readable. * docs/docmaker.py: Formatting. * src/psaux/psauxmod.c: Fixed a broken inclusion of component header files (an FT_FLAT_COMPILE test was missing). * src/cache/ftcmanag.c (FTC_Manager_Done): Fixed a bug that caused an occasional crash when the function was called (due to a dangling pointer). * src/base/ftsystem.c (FT_Done_Memory): Fixed an obvious bug: The ANSI "free()" function was called instead of "memory->free()". * docs/docmaker.py: Added section filtering, multi-page generation (index page generation is still missing though). * builds/unix/install.mk, builds/unix/ft2unix.h: The file "ft2unix.h" is now installed as <ft2build.h> for Unix systems. Note that we still use the "freetype2/freetype" installation path for now. * many files: Now using <ft2build.h> as the default build and setup configuration file in all public headers. Internal source files still need some changes though. * builds/devel/ft2build.h, builds/devel/ftoption.h: Created a new Win32 developer builds. builds/win32/w32-dev.mk: Changed the developer build targets to "devel-gcc" and "devel-bcc" in order to be able to develop with the Borland C++ compiler. | ||
| 00004eef | 2000-12-05 22:28:15 | fixed a broken inclusion of header files (a FT_FLAT_COMPILE test was missing !!) | ||
| 54e75749 | 2000-11-04 02:52:02 | defining new types to hold "internal" fields of public objects: FT_Face_Internal, FT_Size_Internal, FT_Slot_Internal these contain some fields that may change between releases of FreeType, without affecting the size of FT_FaceRec, FT_SizeRec, FT_GlyphSlotRec, etc.., which means that drivers wouldn't need to be recompiled if we only add new fields to an internal structure.. I plan to hack a few things related to the auto-hinter and I need this move to ensure that we will not break binary compatibility between 2.0 and 2.1 :-) - David | ||
| 76a5f623 | 2000-11-04 01:55:49 | major reformatting of the sources: FT_EXPORT_DEF => FT_EXPORT FT_EXPORT_FUNC => FT_EXPORT_DEF BASE_DEF => FT_BASE BASE_FUNC => FT_BASE_DEF LOCAL_DEF => FT_LOCAL LOCAL_FUNC => FT_LOCAL_DEF LOCAL_FUNC_X => FT_CALLBACK_DEF LOCAL_DEF_X => FT_CALLBACK_TABLE FT_CPLUSPLUS => FT_CALLBACK_TABLE_DEF | ||
| e4b32a5d | 2000-10-31 20:42:18 | Removing trailing whitespace. | ||
| b89fb71c | 2000-10-11 23:39:03 | fixed a subtle 64-bit problem that only appears with Compaq C compiler (though it's really a bug) | ||
| 0634cedb | 2000-10-09 01:44:40 | patch from Tom to fix a problem with path_begun. | ||
| 8925009f | 2000-09-26 13:25:15 | Adding missing code for flat compiling mode. | ||
| 4a5c142a | 2000-08-29 18:37:25 | Minor fixes. | ||
| 4e9dae68 | 2000-08-29 16:50:01 | Introducing new macro LOCA_VAR to solve some problems with structures containing function pointers. FT will now compile again with C++. | ||
| 9b4bb291 | 2000-08-25 20:00:58 | #include <freetype/internal/ftdebug.h> /* for FT_ERROR() */ | ||
| d1b7475b | 2000-08-24 16:29:15 | Formatting, small fixes. Adding basic input parameter checking for exported functions. | ||
| 34f1c2f5 | 2000-08-23 22:47:44 | finally, the CID and Type1z driver are finished !! Werner, please have a look at the code and start re-formatting it :-) | ||
| 8728f294 | 2000-08-23 17:32:42 | Formatting, small fixes. Adding copyright notices etc. | ||
| a39acf55 | 2000-08-23 02:47:57 | updated "psaux" and "type1z". The Type 1 driver now completely relies on "psaux". I now need to change the CID driver accordingly, then finally move the Type 2 parsing routines to "psaux" when appropriate.. | ||
| 97488074 | 2000-08-22 22:36:33 | the psaux module is now nearly completed the "type1z" driver uses it to parse Type 1 charstrings (not to parse the Type 1 token stream yet though).. |