Branch :
| Author | Commit | Date | CI | Message |
|---|---|---|---|---|
| 0039d012 | 2011-01-14 19:44:29 | [raster] Add undocumented drop-out rule to the other bbox side also. * src/raster/ftraster.c (Vertical_Sweep_Drop, Horizontal_Sweep_Drop): Implement it. | ||
| c02485cb | 2011-01-13 21:55:08 | [raster] Reduce jitter value. This catches a rendering problem with glyph `x' from Tahoma at 10ppem. It seems that the increase of the precision in the change from 2009-06-11 makes a larger jitter value unnecessary. * src/raster/ftraster.c (Set_High_Precision): Implement it. | ||
| 29bc3105 | 2011-01-13 12:22:55 | [raster] Handle drop-outs at glyph borders according to Microsoft. If a drop-out rule would switch on a pixel outside of the glyph's bounding box, use the right (or top) pixel instead. This is an undocumented feature, but some fonts like `Helvetica Neue LT Com 65 Medium' heavily rely on it. Thanks to Greg Hitchcock who explained this behaviour. * src/raster/ftraster.c (Vertical_Sweep_Drop, Horizontal_Sweep_Drop): Implement it. | ||
| 6a96bbe2 | 2010-10-28 08:51:15 | [ftraster] Minor fixes. Reported by Tom Bishop <wenlin@wenlin.com>. * src/raster/ftraster.c (ULong): Remove unused typedef. (TWorker): Remove unused variable `precision_mask'. | ||
| f0987abd | 2010-10-28 08:33:28 | [ftraster] Fix rendering. Problem reported by Tom Bishop <wenlin@wenlin.com>; see thread starting with http://lists.gnu.org/archive/html/freetype/2010-10/msg00049.html * src/raster/ftraster.c (Line_Up): Replace FMulDiv with SMulDiv since the involved multiplication exceeds 32 bits. | ||
| 46c371c2 | 2010-10-25 00:14:13 | Replace "%lx" for memory address by "%p", LLP64 platforms. On LLP64 platforms (e.g. Win64), long (32-bit) cannot cover the memory address (64-bit). Also the casts from the pointer type to long int should be removed to preserve the address correctly. * src/raster/ftraster.c (New_Profile): Replace "%lx" by "%p". (End_Profile) Ditto. * src/truetype/ttinterp.c (Init_Context): Ditto. | ||
| 12cf0316 | 2010-08-29 11:02:24 | [ftraster] Pacify compiler. * src/raster/ftraster.c (ft_black_new) [_STANDALONE_]: `memory' is not used. | ||
| c9de9cbd | 2010-08-06 08:20:28 | [raster] Fix valgrind warning. * src/raster/ftraster.c (Decompose_Curve) <default>: Access point[0] only if we don't hit `limit'. | ||
| c8f5b98b | 2010-07-12 21:13:22 | Remove C++ warnings. */*: Initialize pointers where necessary to make g++ happy. | ||
| 7baeeafc | 2010-04-05 11:19:38 | Fix Savannah bug #29335. * src/raster/ftraster.c (Line_Up): Use slow multiplication to prevent overflow. This shouldn't have any serious impact on speed, however. | ||
| 6c0d8814 | 2010-03-11 18:27:31 | Fix Savannah bug #27442. * src/raster/ftraster.c (ft_black_reset): Fix `buffer_size'. | ||
| 766b822f | 2009-09-12 23:15:17 | [raster] Fix 5-levels grayscale output. This was broken since version 2.3.0. * src/raster/ftraster.c (count_table): Use pre-2.3.0 values (which were then computed dynamically). (Vertical_Gray_Sweep_Step): Updated. (ft_black_render): Initialize `worker->gray_lines' (problem found by valgrind). (FT_RASTER_OPTION_ANTI_ALIASING, DEBUG_RASTER): Dont' #undef, just comment out. | ||
| 0d02317f | 2009-07-09 09:21:46 | [ftraster] Make it compile again with -D_STANDALONE_. * src/raster/ftraster.c [_STANDALONE_]: Define FT_CONFIG_STANDARD_LIBRARY_H. Include `string.h'. Don't include `rastpic.h'. Define FT_DEFINE_RASTER_FUNCS. | ||
| 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. | ||
| 82622131 | 2009-06-18 15:48:21 | Whitespace & documentation improvements. | ||
| 72271140 | 2009-06-18 15:42:52 | Fix B/W rasterization of subglyphs with different drop-out modes. Normally, the SCANMODE instruction (if present) to set the drop-out mode in a TrueType font is located in the `prep' table only and thus valid for all glyphs. However, there are fonts like `pala.ttf' which additionally contain this instruction in the hinting code of some glyphs (but not all). As a result it can happen that a composite glyph needs multiple drop-out modes for its subglyphs since the rendering state gets reset for each subglyph. FreeType collects the hinted outlines from all subglyphs, then it sends the data to the rasterizer. It also sends the drop-out mode -- after hinting has been applied -- and here is the error: It sends the drop-out mode of the last subglyph only; drop-out modes of all other subglyphs are lost. This patch fixes the problem; it adds a second, alternative mechanism to pass the drop-out mode: For each contour, the rasterizer now checks the first `tags' array element. If bit 2 is set, bits 5-7 contain the contour's drop-out mode, overriding the global drop-out mode. * include/freetype/ftimage.h (FT_CURVE_TAG_HAS_SCANMODE): New macro. * src/truetype/ttgload.c (TT_Hint_Glyph): Store drop-out mode in `tags[0]'. * src/raster/ftraster.c (Flow_Up, Overshoot_Top, Overshoot_Bottom): Use bits 3-5 instead of 0-2. (New_Profile): Set the drop-out mode in the profile's `flags' field. (Decompose_Curve): Check `tags[0]' and set `dropOutControl' if necessary. (Vertical_Sweep_Drop, Horizontal_Sweep_Drop, Horizontal_Gray_Sweep_Drop, Draw_Sweep): Use the profile's drop-out mode. | ||
| 42206ad8 | 2009-06-16 15:14:21 | Improve scan conversion rules 4 and 6. Two new constraints are introduced to better identify a `stub' -- a concept which is only vaguely described in the OpenType specification. The old code was too rigorous and suppressed more pixel than it should. . The intersection of the two profiles with the scanline is less than a half pixel. Code related to this was already present in the sources but has been commented out. . The endpoint of the original contour forming a profile has a distance (`overshoot') less than half a pixel to the scanline. Note that the two additional conditions fix almost all differences to the Windows rasterizer, but some problematic cases remain. * src/raster/ftraster.c (Overshoot_Top, Overshoot_Bottom): New macros for the `flags' field in the `TProfile' structure. (IS_BOTTOM_OVERSHOOT, IS_TOP_OVERSHOOT): New macros. (New_Profile, End_Profile): Pass overshoot flag as an argument and set it accordingly. Update callers. (Vertical_Sweep_Drop, Horizontal_Sweep_Drop): Implement the two new constraints. | ||
| 0409ef32 | 2009-06-11 17:32:31 | Increase precision for B/W rasterizer. * src/raster/ftraster.c (Set_High_Precision): Add two more bits to the precision. This corrects rendering of some small glyphs, for example, glyph `xi' in verdana.ttf at 13 ppem. Testing with ftbench on my GNU/Linux box I don't see a performance degradation. | ||
| 2f2b780e | 2009-06-07 08:29:30 | Simplify math. Suggested by Alexei Podtelezhnikov <apodtele@gmail.com>. * src/raster/ftraster.c (Vertical_Sweep_Drop, Horizontal_Sweep_Drop, Horizontal_Gray_Sweep_Drop): Do it. | ||
| 90c699af | 2009-06-05 10:37:15 | Preparation for fixing scan conversion rules 4 and 6. * src/raster/ftraster.c (TFlow): Replace enumeration with... (Flow_Up): This macro. (TProfile): Replace `flow' member with `flags' bit field. Update all affected code. | ||
| cbdba615 | 2009-06-03 08:53:47 | Typo, formatting. | ||
| 19fbc576 | 2009-05-22 09:20:25 | Improve b/w rasterizer. Problem reported by Krzysztof Kotlenga <pocek@users.sf.net>. * src/raster/raster.c (Vertical_Sweep_Drop, Horizontal_Sweep_Drop, Horizontal_Gray_Sweep_Drop): For smart drop-out mode, if intersections are equally distant relative to next pixel center, select the left pixel, not the right one. | ||
| 05609509 | 2009-04-05 18:16:13 | Position Independent Code (PIC) support in raster renderer. * src/raster/ftrend1.h declare ft_raster1_renderer_class and ft_raster5_renderer_class using macros from ftrender.h, when FT_CONFIG_OPTION_PIC is defined create and destroy functions will be declared. * src/smooth/ftrend1.c when FT_CONFIG_OPTION_PIC is defined ft_raster1_renderer_class and ft_raster5_renderer_class structs will have functions to init or create and destroy them instead of being allocated in the global scope. Macros will be used from rastpic.h in order to access ft_standard_raster from the pic_container (allocated in ftraster.c). In ft_raster1_render when PIC is enabled, the last letter of module_name is used to verfy the renderer class rather than the class pointer. * src/raster/ftraster.c when FT_CONFIG_OPTION_PIC is defined ft_standard_raster struct will have function to init it instead of being allocated in the global scope. New Files: * src/raster/rastpic.h declare struct to hold PIC globals for raster renderer and macros to access them. * src/raster/rastpic.c implement functions to allocate, destroy and initialize PIC globals for raster renderer. * src/raster/raster.c add new file to build: rastpic.c. * src/raster/jamfile add new files to FT2_MULTI build: rastpic.c. | ||
| b66efefd | 2009-03-12 08:07:49 | Fix some FreeType Coverity issues as reported for Ghostscript. * src/base/ftobjs.c (FT_New_Face, FT_New_Memory_Face): Initialize `args.stream' (#3874, #3875). (open_face_PS_from_sfnt_stream): Improve error management (#3786). * src/base/ftmm.c (ft_face_get_mm_service): Fix check of `aservice' (#3870). * src/base/ftstroke.c (ft_stroke_border_get_counts): Remove dead code (#3790). * src/base/ftrfork.c (raccess_guess_apple_generic): Check error value of `FT_Stream_Skip' (#3784). * src/type1/t1gload.c (T1_Load_Glyph): Check `size' before accessing it (#3872) * src/pcf/pcfdrivr.c (PCF_Glyph_Load): Check `face' before accessing it (#3871). * src/pcf/pcfread.c (pcf_get_metrics): Handle return value of `pcf_get_metric' (#3789, #3782). (pcf_get_properties): Use FT_STREAM_SKIP (#3783). * src/cache/ftcmanag.c (FTC_Manager_RegisterCache): Fix check of `acache' (#3797) * src/cff/cffdrivr.c (cff_ps_get_font_info): Fix check of `cff' (#3796). * src/cff/cffgload.c (cff_decoder_prepare): Check `size' (#3795). * src/cff/cffload.c (cff_index_get_pointers): Add comment (#3794). * src/bdf/bdflib.c (_bdf_add_property): Check `fp->value.atom' (#3793). (_bdf_parse_start): Add comment (#3792). * src/raster/ftraster.c (Finalize_Profile_Table): Check `ras.fProfile' (#3791). * src/sfnt/ttsbit.c (Load_SBit_Image): Use FT_STREAM_SKIP (#3785). * src/gzip/ftgzip.c (ft_gzip_get_uncompressed_size): Properly ignore seek error (#3781). | ||
| f47acf2b | 2009-01-12 20:11:14 | Avoid compiler warnings. * */*: s/do ; while ( 0 )/do { } while ( 0 )/. Reported by Sean McBride <sean@rogue-research.com>. | ||
| 174b8de3 | 2008-10-12 11:47:29 | * src/sfnt/sfobjs.c (sfnt_load_face): Fix computation of `underline_position'. * docs/CHANGES: Updated. Formatting, minor editing. | ||
| 71b8f3f2 | 2008-07-04 07:22:06 | * src/raster/ftraster.c (Draw_Sweep): If span is smaller than one pixel, only check for dropouts if neither start nor end point lies on a pixel center. This fixes Savannah bug #23762. | ||
| a741c6f2 | 2008-06-27 06:58:48 | * src/raster/ftraster.c (Vertical_Sweep_Drop, Horizontal_Sweep_Drop, Horizontal_Gray_Sweep_Drop): Test for intersections which degenerate to a single point can be ignored; this has been confirmed by Greg Hitchcock from Microsoft. (This was commented out code.) | ||
| ce8853af | 2008-06-24 11:19:03 | * src/truetype/ttinterp. (Ins_SCANTYPE): Don't check rendering mode. * src/raster/ftraster.c (Render_Glyph, Render_Gray_Glyph, Draw_Sweep): No-dropout mode is value 2, not value 0. (Draw_Sweep): Really skip dropout handling for no-dropout mode. | ||
| 5df5dbb7 | 2008-06-22 13:40:08 | Enable access to the various dropout rules of the B&W rasterizer. Pass dropout rules from the TT bytecode interpreter to the rasterizer; temporarily this is enabled only if `USE_SCAN_CONVERSION_RULES' is defined. * include/freetype/ftimage.h (FT_OUTLINE_SMART_DROPOUTS, FT_OUTLINE_EXCLUDE_STUBS): New flags for for FT_Outline. * src/raster/ftraster.c (Vertical_Sweep_Drop, Horizontal_Sweep_Drop, Horizontal_Gray_Sweep_Drop): Use same mode numbers as given in the OpenType specification. Fix mode 4 computation. (Render_Glyph, Render_Gray_Glyph): Handle new outline flags. * src/truetype/ttgload.c (TT_Load_Glyph) [USE_SCAN_CONVERSION_RULES]: Convert scan conversion mode to FT_OUTLINE_XXX flags. * src/truetype/ttinterp.c (Ins_SCANCTRL): Enable ppem check. | ||
| c9381318 | 2008-05-25 12:19:34 | * src/raster/ftraster.c (fc_black_render): Return 0 when we are trying to render into a zero-width/height bitmap, not an error code. | ||
| 1ddd1b76 | 2008-01-16 06:58:54 | * src/raster/ftraster.c (ft_black_render): Check `outline' before using it. Reported by Allan Yang. | ||
| eca1f279 | 2008-01-12 07:46:09 | * src/raster/ftraster.c (FT_CONFIG_OPTION_5_GRAY_LEVELS): Remove. * src/raster/ftraster.c (ft_black_init) [FT_RASTER_OPTION_ANTI_ALIASING]: Fix compilation. | ||
| 39c91ad4 | 2007-07-28 05:40:40 | * src/raster/ftraster.c (count_table): Make it conditional. * src/base/ftobjs.c (FT_New_Library): Check FT_RENDER_POOL_SIZE with a preprocessor statement. | ||
| 6e87ed9f | 2007-01-26 22:18:56 | Spelling fixes from Alexei. | ||
| 4ea0a7f0 | 2007-01-05 09:03:31 | formatting, minor doc fixes, copyright years | ||
| 38d1002b | 2007-01-04 18:50:12 | * src/raster/ftraster.c: removing dynamically generated "count_table", and replace it with a constant array of bytes | ||
| 8a2c7f8f | 2007-01-04 18:33:12 | * src/raster/ftraster.c, src/smooth/ftgrays.c: small optimization, the rasterizers now uses the render pool to store their state during scanline convertion. this saves about 6 KB of heap space for each FT_Library instance | ||
| 8ae1dceb | 2005-05-20 06:22:20 | * include/freetype/ftimage.h (FT_Raster_Params), include/freetype/ftoutln.h (FT_Outline_Translate, FT_Outline_Transform), src/base/ftoutln.c (FT_Outline_Translate, FT_Outline_Transform): Decorate parameters with `const' where appropriate. Update all callers. * src/raster/ftraster.c (ft_black_reset), src/smooth/ftgrays.c (gray_raster_reset): Remove `const' from `pool_base' argument. | ||
| f9fccbee | 2005-05-19 07:20:24 | * src/raster/ftmisc.h: New file. Only needed if ftraster.c is compiled as stand-alone. * src/raster/ftraster.c: Add comment how to compile as stand-alone. s/FT_CONFIG_OPTION_STATIC_RASTER/FT_STATIC_RASTER/. s/TT_STATIC_RASTER/FT_STATIC_RASTER/. [_STANDALONE_]: Include ftimage.h and ftmisc.h. (FT_TRACE1, FT_TRACE6, ft_memset, FT_MEM_ZERO): Define conditionally. (Render_Glyph, Render_Gray_Glyph): Return Raster_Err_None (or Raster_Err_Unsupported). (ft_black_new) [_STANDALONE_]: Fix type of `the_raster'. (ft_black_init, ft_black_reset, ft_black_set_mode, ft_black_render): Use `ras', not `raster'. (ft_black_done): Use FT_UNUSED_RASTER. (Horizontal_Sweep_Init, Horizontal_Sweep_Step, Horizontal_Gray_Sweep_Span): Use FT_UNUSED_RASTER. * docs/CHANGES: Updated. | ||
| ce235eaf | 2005-05-17 20:35:23 | * builds/win32/visualc/freetype.vcproj: Updated. Exclude debug info for `Release' versions to reduce library size. * src/base/ftobjs.c (FT_Open_Face): Make it work as documented, this is, ignore `aface' completely if face_index < 0. Reported by David Osborn <spam@habitualhiatus.com>. * include/freetype/ftimage.h (FT_Outline_MoveToFunc, FT_Outline_LineTo_Func, FT_Outline_ConicToFunc, FT_Outline_CubicToFunc), src/smooth/ftgrays.c (gray_render_conic, gray_render_cubic, gray_move_to, gray_line_to, gray_conic_to, gray_cubic_to, gray_render_span, gray_sweep): Decorate parameters with `const' where appropriate. | ||
| fa420250 | 2005-05-11 20:04:35 | * include/freetype/ftimage.h (FT_Raster_RenderFunc), include/freetype/ftrender.h (FT_Glyph_TransformFunc, FT_Renderer_Render_Func, FT_Renderer_TransformFunc), src/base/ftglyph.c (ft_outline_glyph_transform), src/raster/ftrend1.c (ft_raster1_transform, ft_raster1_render), src/smooth/ftgrays.c (FT_Outline_Decompose, gray_raster_render), src/smooth/ftsmooth.c (ft_smooth_transform, ft_smooth_render_generic, ft_smooth_render, ft_smooth_render_lcd, ft_smooth_render_lcd_v): Decorate parameters with `const' where appropriate. * src/raster/ftraster.c (RASTER_RENDER_POOL): Removed. Obsolete. (ft_black_render): Decorate parameters with `const' where appropriate. * src/sfnt/ttcmap.c (tt_cmap4_set_range): Fix typo (FT_PEEK_SHORT -> FT_PEEK_USHORT) which caused crashes. Reported by Ismail Donmez <ismail@kde.org.tr>. | ||
| c01c9042 | 2005-04-14 16:03:15 | * include/freetype/freetype.h (FT_Vector_Transform), include/freetype/ftimage.h (FT_Raster_Params), include/freetype/ftoutln.h, src/base/ftoutln.c (FT_Outline_Get_CBox, FT_Outline_Copy, FT_Outline_Transform, FT_Vector_Transform, FT_Outline_Get_Bitmap), src/raster/ftraster.c (ft_black_render), src/smooth/ftgrays.c (gray_raster_render): Decorate parameters with `const' where appropriate. * src/sfnt/ttsbit0.c (tt_sbit_decoder_load_image): Fix arguments to call of tt_sbit_decoder_load_bitmap. | ||
| e5bcbf95 | 2005-04-01 23:57:31 | Add comment about hard-coded dropout mode. | ||
| fefd8742 | 2004-06-12 13:21:20 | * docs/CHANGES: Updated. Minor clean-ups. | ||
| 8530a228 | 2004-06-09 20:18:35 | * include/freetype/freetype.h (FT_Glyph_Metrics, FT_GlyphSlotRec), src/autofit/afloader.c, src/autohint/ahhint.c: moved the definition of 'lsb_delta' and 'rsb_delta' from FT_GlyphMetrics to FT_GlyphSlotRec. The old location did BREAK BINARY COMPATIBILITY of the library !! * src/sfnt/sfobjs.c: removing compiler warning | ||
| 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. | ||
| 51daa4fe | 2003-05-18 22:40:11 | * src/raster/ftraster.c (Insert_Y_Turn): Fix overflow test. * include/freetype/config/ftoption.h [FT_CONFIG_OPTION_MAC_FONTS]: New macro. * src/base/ftobjs.c: Use it to control mac font support on non-mac platforms. Implement partial support of Mac fonts on non-Mac platforms. * src/base/ftobjs.c (memory_stream_close, new_memory_stream, open_face_from_buffer, Mac_Read_POST_Resource, Mac_Read_sfnt_Resource, IsMacResource, IsMacBinary, load_mac_face) [!FT_MACINTOSH]: New functions. (FT_Open_Face) [!FT_MACINTOSH]: Use load_mac_face. * src/base/ftobjs.c (FT_Load_Glyph): Scale linear advance width only if FT_FACE_FLAG_SCALABLE is set (otherwise we have a division by zero since FNT and friends don't define `face->units_per_EM'). | ||
| 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. | ||
| 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_. | ||
| 3c403e4c | 2002-08-06 21:47:40 | Some formatting. * src/cff/cffcmap.c: Remove compiler warnings. * src/cache/ftccache.c, src/cache/ftccache.i, src/pfr/pfrload.c, src/pfr/pfrgload.c: s/index/idx/. * src/cff/cffload.c: s/select/fdselect/. * src/raster/ftraster.c: s/wait/waiting/. | ||
| b3d5e9cf | 2002-07-28 05:05:24 | s/ft_memset/FT_MEM_SET/. s/FT_MEM_SET/FT_MEM_ZERO/ where appropriate. | ||
| 9ca7a157 | 2002-04-30 14:26:49 | * src/base/ftmac.c (p2c_str): Removed. (file_spec_from_path) [TARGET_API_MAC_CARBON]: Added support for OS X. (is_dfont) [TARGET_API_MAC_CARBON]: Define only for OS X. Handle `nameLen' <= 6 also. (parse_fond): Remove unused variable `name_table'. Use functionality of old p2c_str directly. Add safety checks. (read_lwfn): Initialize `size_p'. Check for size_p == NULL. (new_memory_stream, open_face_from_buffer): Updated to FreeType 2.1. (FT_New_Face_From_LWFN): Remove unused variable `memory'. Remove some dead code. (FT_New_Face_From_SFNT): Remove unused variable `stream'. (FT_New_Face_From_dfont) [TARGET_API_MAC_CARBON]: Define only for OS X. (FT_New_Face_From_FOND): Remove unused variable `error'. (ResourceForkSize): New function. (FT_New_Face): Use it. Handle empty resource forks. Conditionalize some code for OS X. Add code to call normal loader as a fallback. Some more variable renames to avoid troubles on the Mac. * src/raster/ftraster.c: s/Unknown|Ascending|Descending|Flat/\1_State/. * src/smooth/ftgrays.c: s/TScan/TCoord/. Other changes for the Mac. * include/freetype/config/ftconfig.h: Define FT_MACINTOSH for Mac platforms. * src/base/ftobjs.c: s/macintosh/FT_MACINTOSH/. * src/raster/ftrend1.c (ft_raster1_render): Make `pitch' always an even number. | ||
| 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.. | ||
| b7b163cb | 2002-03-31 18:48:24 | * src/sfnt/ttcmap.c: 16bit fixes (0xFFFF -> 0xFFFFU). * src/sfnt/ttcmap0.c: 16bit fixes. (TT_Build_CMaps): Simplify debug messages. (tt_cmap12_char_next): Fix offset. * src/sfnt/ttload.c (TT_Load_Names, TT_Load_CMap): Fix debug messages. (TT_Load_OS2): 16bit fix. | ||
| 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.. | ||
| 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 ) | ||
| 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()'. | ||
| 5a1de37e | 2001-10-24 07:32:55 | replaced liberal uses of "memset" by the "MEM_Set" macro call (some platforms don't provide this ANSI function !!) some changes to "ftsystem.c" implementations in order to use the new memory debugger on Unix, VMS and Amiga too !! | ||
| ea5a981c | 2001-10-17 14:29:51 | minimal optimisation submitted by Graham Asher | ||
| 415235df | 2001-06-28 17:49:10 | finishing function header formatting updating copyrights | ||
| 52005c30 | 2001-06-27 23:25:46 | 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++) | ||
| 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. | ||
| caf72cd6 | 2001-04-25 18:11:16 | * src/base/ftbbox.c (BBox_Cubic_Check): rewrote function to use direct computations with 16.16 values instead of sub-divisions. It is now slower, but proves a point :-) * src/raster/ftraster.c, src/smooth/ftgrays.c, src/base/ftbbox.c : fixed the bezier stack depths.. * src/base/ftcalc.c (FT_MulFix): minor rounding fix * builds/beos : added BeOS-specific files to the old build system (no changes were necessary to support BeOS in the Jamfile though) | ||
| 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.. | ||
| 914b289f | 2001-03-10 17:07:42 | * src/*/*.c: Added many casts to make code more 64bit-safe. | ||
| 1eb9a43a | 2000-12-14 21:24:27 | fixed small bug (no need to test target pixmap in direct rendering mode) | ||
| 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. | ||
| 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 | ||
| 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 | ||
| a4e2894e | 2000-10-26 00:30:33 | simple renaming of directories: "type1z" -> "type1" "raster1" -> "raster" note that I didn't rename all files. We'll have to endure the "z1..." crazyness unless we perform a _big_ sed on the sources :-) |