Branch :
| Author | Commit | Date | CI | Message |
|---|---|---|---|---|
| 79e36bae | 2012-06-18 10:36:06 | [truetype] Support subpixel hinting. This is the large, famous `Infinality' patch to support ClearType bytecode which has been available from http://www.infinality.net/blog/ for some time, and which has been refined over the last years. While still experimental, it is now mature enough to be included directly into FreeType. Most of the code is based on the ClearType whitepaper written by Greg Hitchcock http://www.microsoft.com/typography/cleartype/truetypecleartype.aspx which gives a detailed overview of the necessary changes to the Microsoft rasterizer so that older fonts are supported. However, a lot of details are still missing, and this patches provides a framework to easily handle rendering issues down to the glyph level of certain fonts. Note that ClearType support is not completely implemented! In particular, full support for the options `compatible_widths', `symmetrical_smoothing, and `bgr' (via the GETINFO bytecode instruction) is missing. * src/truetype/ttsubpix.c: New file, providing code to handle `tweaks', this is, rules for certain glyphs in certain fonts (including wildcards) which need a special treatment. * src/truetype/ttsubpix.h: New file, holding the tweaking rules. * include/freetype/config/ftoption.h, src/devel/ftoption.h (TT_CONFIG_OPTION_SUBPIXEL_HINTING): New macro. * include/freetype/internal/ftobjs.h (FT_PIX_FLOOR_GRID, FT_PIX_ROUND_GRID, FT_PIX_CEIL_GRID): New macros. * src/truetype/truetype.c [TT_USE_BYTECODE_INTERPRETER]: Include `ttsubpix.c'. * src/truetype/ttgload.c: Include `ttsubpix.h'. [All changes below are guarded by TT_CONFIG_OPTION_SUBPIXEL_HINTING.] (tt_get_metrics): Set tweak flags. (TT_Hint_Glyph): Call `FT_Outline_EmboldenXY' if necessary. (TT_Process_Simple_Glyph): Compensate emboldening if necessary. (compute_glyph_metrics): Handle `compatible widths' option. (tt_loader_init): Handle ClearType GETINFO information bits. * src/truetype/rules.mk (TT_DRC_SRC): Updated. * src/truetype/ttinterp.c: Include `ttsubpix.h'. [Where necessary, changes below are guarded by TT_CONFIG_OPTION_SUBPIXEL_HINTING.] (Direct_Move, Direct_Move_X): Extended. (Round_None, Round_To_Grid, Round_To_Half_Grid, Round_Down_To_Grid, Round_Up_To_Grid, Round_To_Double_Grid, Round_Super, Round_Super_45, SetSuperRound): Add parameter to handle the number of grid lines per pixel. (SET_SuperRound, ROUND_None, CUR_Func_round): Updated. (DO_SROUND, DOS45ROUND, DO_ODD, DO_EVEN): Updated. (DO_ROUND, DO_NROUND): Updated. (DO_RS): Take care of `Typeman' bytecode patterns. (Ins_FDEF): Add some debugging code. Commented out. (Ins_ENDF): Restore state. (Ins_CALL, Ins_LOOPCALL): Handle inline delta functions. (Ins_MD): Handle `Vacuform' rounds. (Move_Zp2_Point, Ins_SHPIX, Ins_MSIRP, Ins_MDAP, Ins_MIAP, Ins_MDRP, Ins_MIRP): Handle tweaks. (Ins_ALIGNRP): Add tweak guard. (Ins_IUP, Ins_DELTAP): Handle tweaks. (Ins_GETINFO): Handle new ClearType bits. (TT_RunIns): Handle tweaks. * src/truetype/ttinterp.h: Updated. (SPH_TweakRule, SPH_ScaleRule): New structures for tweaks. (TT_ExecContextRec): Add members for subpixel hinting support. * src/truetype/ttobjs.h (TT_DefRecord): Add `inline_delta' member. | ||
| 320613ee | 2012-06-15 06:45:12 | * Version 2.4.10 released. ========================== Tag sources with `VER-2-4-10'. * docs/VERSION.DLL: Update documentation and bump version number to 2.4.10. * README, Jamfile (RefDoc), builds/win32/vc2005/freetype.vcproj, builds/win32/vc2005/index.html, builds/win32/vc2008/freetype.vcproj, builds/win32/vc2008/index.html, builds/win32/vc2010/freetype.vcxproj, builds/win32/vc2010/index.html, builds/win32/visualc/freetype.dsp, builds/win32/visualc/freetype.vcproj, builds/win32/visualc/index.html, builds/win32/visualce/freetype.dsp, builds/win32/visualce/freetype.vcproj, builds/win32/visualce/index.html, builds/wince/vc2005-ce/freetype.vcproj, builds/wince/vc2005-ce/index.html, builds/wince/vc2008-ce/freetype.vcproj, builds/wince/vc2008-ce/index.html: s/2.4.9/2.4.10/, s/249/2410/. * include/freetype/freetype.h (FREETYPE_PATCH): Set to 10. * builds/unix/configure.raw (version_info): Set to 15:0:9. | ||
| cea9d7a6 | 2012-06-15 06:33:46 | * src/base/ftsynth.c (FT_GlyphSlot_Embolden): Improve spacing. * docs/CHANGES: Updated. | ||
| a03cb019 | 2012-06-14 17:56:01 | * builds/exports.mk: Add CCexe_CFLAGS and CCexe_LDFLAGS. to pass special compiler/linker flags under cross development. Suggested by Savannah bug #36367. ChangeLog on 2010-07-15 saying as they were removed was wrong for the official trunk of FreeType2. This commit is the first introduction of them. | ||
| 2d67e9b5 | 2012-06-14 08:46:04 | * docs/CHANGES: Updated. | ||
| 6c7c3de1 | 2012-06-14 01:38:20 | [truetype] Add new versions of NEC FA family to tricky font list. NEC FA family dated in 1996 have different checksum. Reported by Johnson Y. Yan <yinsen_yan@foxitsoftware.com>; see http://lists.gnu.org/archive/html/freetype-devel/2012-06/msg00023.html * src/truetype/ttobjs.c (tt_check_trickyness_sfnt_ids): 4 sets of fpgm & prep table checksums for FA-Gothic, FA-Minchou, FA-RoundedGothicM, FA-RoundedGothicB are added. The family names in sample PDF are truncated, thus the list of the family names in tt_check_trickyness_family() is not updated yet. | ||
| fc61b5f2 | 2012-06-12 08:07:19 | Fix Savannah bug #36634. Minor documentation improvement of FT_Get_Char_Index. | ||
| 495bd3cc | 2012-06-06 13:24:04 | [ftraster] Fix rounding issue causing visual artifacts. Problem reported by jola <hans-jochen.lau@lhsystems.com>; see http://lists.gnu.org/archive/html/freetype-devel/2012-05/msg00036.html * src/raster/ftraster.c (SMulDiv_No_Round): New macro. (Line_Up): Use it. * src/raster/ftmisc.h (FT_MulDiv_No_Round): Copied from `ftcalc.c'. | ||
| 5715ff46 | 2012-05-29 13:57:12 | configure.raw: Doc improvement. | ||
| 2bdd0949 | 2012-05-28 23:11:03 | * src/base/ftoutln.c (FT_Outline_Get_Orientation): Simplify. We now use the cross product of the direction vectors to compute the outline's orientation. | ||
| aa6895c1 | 2012-05-28 22:55:54 | * docs/CHANGES: Updated. | ||
| f875fc71 | 2012-05-28 22:34:58 | New function FT_Outline_EmboldenXY. * include/freetype/ftoutln.h (FT_Outline_EmboldenXY): Define it. * src/base/ftoutln.c (FT_Outline_EmboldenXY): Implement it, using a simplified embolding algorithm. (FT_Outline_Embolden): Make it a special case of `FT_Outline_EmboldenXY' | ||
| 8be5d3ac | 2012-05-24 07:05:03 | Improve documentation w.r.t. stroking and advance widths. Based on suggestions from johnpf74 <jfalcone@ea.com>. | ||
| 8dc17bb4 | 2012-05-07 11:24:48 | [type1] Fix Savannah bug #36386. * src/type1/t1load.c (t1_load_keyword): Ignore keyword if context is not valid. | ||
| 448d128e | 2012-04-24 15:25:54 | Document that the auto-hinter needs a valid cmap. | ||
| 447f0773 | 2012-04-07 19:13:29 | Minor documentation improvement. | ||
| 9c6d1ac3 | 2012-04-07 06:39:25 | Remove compiler warning. * src/truetype/ttgload.c (TT_Load_Glyph) [!TT_CONFIG_OPTION_EMBEDDED_BITMAPS]: Access `glyph->face' directly. | ||
| 8be32d2f | 2012-03-28 12:21:50 | [autofit] Properly copy scaler flags to script metrics object. Without this patch, only the dummy and cjk autohinter modules get them (since they copy the whole scaler object). * src/autofit/aflatin.c (af_latin_metrics_scale), src/autofit/aflatin2.c (af_latin2_metrics_scale): Implement it. | ||
| 0c5789f9 | 2012-03-22 07:05:40 | [bdflib] Remove redundant macro. * src/bdf/bdflib.c (isdigok): Remove and replace with sbitset, which is exactly the same. | ||
| f0b19414 | 2012-03-21 15:42:14 | [configure] fix Savannah bug #35644. * builds/unix/configure.raw: Check `-ansi' flag works even if gcc is used. Bionic libc headers for Android lose the consistency when they are parsed with __STDC_VERSION__ older than 199901L or __STRICT_ANSI__. | ||
| 37b5c92f | 2012-03-20 07:23:12 | [bdf] Improvement to Savannah bug #35656. * src/bdf/bdflib.c (isdigok): Add cast, as suggested in report. | ||
| 9e0c6674 | 2012-03-18 16:00:38 | Improve misleading documentation note. | ||
| b43e0f44 | 2012-03-17 07:42:43 | [type1] Fix Savannah bug #35847. * src/type1/t1load.c (parse_subrs): Fix the loop exit condition; we want to exit when we have run out of data. | ||
| 649c673a | 2012-03-16 21:12:41 | [bdf] Really fix 35658. * src/bdf/bdflib.c (_bdf_list_split): Add one more `field' initializer. | ||
| ad05bac6 | 2012-03-14 18:34:36 | [sfnt] Make arrays static like all others. * src/sfnt/ttload.c (tt_face_load_maxp, tt_face_load_os2), src/sfnt/ttmtx.c (tt_face_load_hhea): Add `static' keyword to frame fields. | ||
| 3650f801 | 2012-03-14 18:29:57 | [sfnt] A refinement of the previous commit. * src/sfnt/sfobjs.c (tt_name_entry_ascii_from_utf16, tt_name_entry_ascii_from_other): Stop at null byte. | ||
| bf06b62a | 2012-03-14 14:44:46 | [sfnt] Add `name' table compatibility to MS Windows. * src/sfnt/sfobjs.c (tt_name_entry_ascii_from_utf16, tt_name_entry_ascii_from_other): Don't replace `\0' with question marks when converting strings. | ||
| 9a55cb7a | 2012-03-14 14:40:03 | Fix Savannah bug #35833. Based on the patch given in the bug report. * src/type1/t1load.c (IS_INCREMENTAL): New macro. (read_binary_data): Add parameter `incremental'. Update all callers using `IS_INCREMENTAL'. | ||
| cbe90292 | 2012-03-13 08:52:31 | Comment typo. | ||
| 10364096 | 2012-03-11 15:20:32 | [autofit] Return correct linear advance width values. This was quite a subtle bug which accidentally showed up with glyph `afii10023' of arial.ttf (version 2.76). This glyph is a composite; the first component, `E', has an advance width of 1366 font units, while the advance width of the composite itself (which looks like uppercase `E' with dieresis) is 1367 font units. I think this is actually a bug in the font itself, because there is no reason that this glyph has not the same width as uppercase `E' without the dieresis. Anyway, it helped identify this problem. Using the TrueType hinter, the correct value (1367) of `afii10023' was returned, but the autohinter mysteriously returned 1366. Digging in the code showed that the autohinter recursively calls FT_Load_Glyph to load the glyph, adding the FT_LOAD_NO_SCALE load flag. However, the `linearHoriAdvance' field is still returned as a scaled value. To avoid scaling twice, the old code in autofit reset `linearHoriAdvance', using the `horiAdvance' field. This seemed to work since FT_LOAD_NO_SCALE was in use, but it failed actually, because `horiAdvance' is defined as the distance of the first subglyph's phantom points, which in turn are initialized using the advance width of the first subglyph. And as the given example shows, these widths can differ. * src/autofit/afloader.c (af_loader_load_g): Temporarily set FT_LOAD_LINEAR_DESIGN while calling FT_Load_Glyph to get unscaled values for the linear advance widths. | ||
| f1ec0842 | 2012-03-11 13:48:25 | s/maximal/maximum/ everywhere, s/minimal/minimum/ where appropriate. | ||
| 1054bc29 | 2012-03-10 09:30:27 | [truetype] Improve comment. | ||
| e1899bcf | 2012-03-10 09:28:24 | [truetype] Fix SSW instruction. * src/truetype/ttinterp.c (DO_SSW): SSW *does* use font units. For verification, it took some time to find a font which actually uses this instruction. | ||
| 9e287894 | 2012-03-10 07:31:58 | Prepare source code for amalgamation. * include\freetype\freetype.h: Swap order of preprocessor blocks. | ||
| 50ed33e5 | 2012-03-08 21:02:06 | * Version 2.4.9 released. ========================= Tag sources with `VER-2-4-9'. * docs/CHANGES: Updated. * docs/VERSION.DLL: Update documentation and bump version number to 2.4.9. * README, Jamfile (RefDoc), builds/win32/vc2005/freetype.vcproj, builds/win32/vc2005/index.html, builds/win32/vc2008/freetype.vcproj, builds/win32/vc2008/index.html, builds/win32/vc2010/freetype.vcxproj, builds/win32/vc2010/index.html, builds/win32/visualc/freetype.dsp, builds/win32/visualc/freetype.vcproj, builds/win32/visualc/index.html, builds/win32/visualce/freetype.dsp, builds/win32/visualce/freetype.vcproj, builds/win32/visualce/index.html, builds/wince/vc2005-ce/freetype.vcproj, builds/wince/vc2005-ce/index.html, builds/wince/vc2008-ce/freetype.vcproj, builds/wince/vc2008-ce/index.html: s/2.4.8/2.4.9/, s/248/249/. * include/freetype/freetype.h (FREETYPE_PATCH): Set to 9. * builds/unix/configure.raw (version_info): Set to 14:1:8. | ||
| c4cad30e | 2012-03-08 20:11:37 | [bdf] Add missing overflow check. * src/bdf/bdflib.c (_bdf_parse_glyphs) <BITMAP>: Add threshold for `glyph->bpr'. | ||
| 26dfeb6d | 2012-03-08 06:04:03 | Prepare source code for amalgamation. * src\autofit\aferrors.h, src\bdf\bdferror.h, src\bzip2\ftbzip2.c, src\cache\ftcerror.h, src\cff\cfferrs.h, src\cid\ciderrs.h, src\gxvalid\gxverror.h, src\gzip\ftgzip.c, src\lzw\ftlzw.c, src\otvalid\otverror.h, src\pcf\pcferror.h, src\pfr\pfrerror.h, src\psaux\psauxerr.h, src\pshinter\pshnterr.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\type42\t42error.h, src\winfonts\fnterrs.h: Add #undef FT_ERR_PREFIX before #define FT_ERR_PREFIX. | ||
| 8a2b444d | 2012-03-04 08:35:03 | Revert "[cff] One more check against malformed font matrix." As Alexei points out, this test is completely nonsense. This reverts commit 35bb214ae620400cd09a2cfaf3bacd66e179a1f6. | ||
| 35bb214a | 2012-03-03 12:29:53 | [cff] One more check against malformed font matrix. * src/cff/cffparse.c (cff_parse_font_matrix): Guard against `xx' and `yy' matrix coefficients being zero. | ||
| ba67957d | 2012-03-03 12:27:18 | Fix Savannah bug #35660. For some divisions, we use casts to 32bit entities. Always guard against division by zero with these casts also. * src/base/ftcalc.c (ft_div64by32): Remove redundant cast. (FT_MulDiv, FT_MulDiv_No_Round): Add 32bit cast. (FT_DivFix): Add 32bit cast (this omission triggered the bug). | ||
| 847502a2 | 2012-03-03 07:03:41 | Improve documentation of `FT_Get_Track_Kerning'. | ||
| ceed93e3 | 2012-03-03 07:03:08 | [psaux] Fix handling of track kerning. * src/psaux/afmparse.c (afm_parse_track_kern): Don't inverse sign for `min_kern'. It is indeed quite common that track kerning *increases* spacing for very small sizes. | ||
| 0fc8debe | 2012-03-02 16:09:51 | [truetype] Fix Savannah bug #35689. * src/truetype/ttgload.c (TT_Load_Simple_Glyph): Check first outline point. | ||
| 6ac022dc | 2012-03-01 16:43:20 | [bdf] Fix Savannah bug #35656. * src/bdf/bdflib.c (_bdf_parse_glyphs) <_BDF_BITMAP>: Check validity of nibble characters instead of accessing `a2i' array. | ||
| 7d35a7dc | 2012-03-01 16:11:33 | [winfonts] Fix Savannah bug #35659. * src/winfonts/winfnt.c (FNT_Face_Init): Check number of glyphs. | ||
| d9c16596 | 2012-03-01 15:15:00 | [bdf] Fix Savannah bug #35658. * src/bdf/bdflib.c (_bdf_list_split): Initialize `field' elements properly. | ||
| 292144b4 | 2012-03-01 14:54:47 | [psaux] Fix Savannah bug #35657. If in function `skip_spaces' the routine `skip_comment' comes to the end of buffer, `cur' is still increased by one, so we need to check for `p >= limit' and not `p == limit'. * src/psaux/psconv.c (PS_Conv_Strtol, PS_Conv_ToFixed, PS_Conv_ASCIIHexDecode, PS_Conv_EexecDecode): Fix boundary checking. | ||
| a33c013f | 2012-03-01 14:04:30 | [truetype] Fix Savannah bug #35646. * src/truetype/ttinterp.c (Ins_MIRP): Typo, present since ages. The code is now in sync with the other operators (e.g. MSIRP) which modify twilight points. | ||
| cee5d593 | 2012-03-01 09:26:03 | [bdf] Fix Savannah bug #35643. * src/bdf/bdflib.c (_bdf_list_ensure): Bring code in sync with comment before `_bdf_list_split', this is, really allocate at least five `field' elements. | ||
| 4086fb7c | 2012-03-01 08:55:40 | [bdf] Fix Savannah bug #35641. * src/bdf/bdflib.c (_bdf_parse_glyphs) <DWIDTH, BBX>: Abort if _BDF_ENCODING isn't set. We need this because access to the `glyph' variable might be undefined otherwise. | ||
| 5dddcc45 | 2012-03-01 07:52:24 | [truetype] Fix Savannah bug #35640. * src/truetype/ttinterp.c (SkipCode, TT_RunIns): Fix boundary check for NPUSHB and NPUSHW instructions. | ||
| 96cddb8d | 2012-02-29 17:58:57 | [truetype] Fix Savannah bug #35601. * src/truetype/ttinterp.c (Ins_SHZ): Use number of points instead of last point for loop. Also remove redundant boundary check. | ||
| 9290fa90 | 2012-02-29 17:29:07 | [truetype] Remove redundant check. * src/truetype/ttgload.c (TT_Load_Simple_Glyph): Remove reduntant second check for ordered contour start points. | ||
| 9eacbb81 | 2012-02-29 14:47:47 | [truetype] Make SHC instruction behave similar to MS rasterizer. * src/truetype/ttinterp.c (Ins_SHC): Handle virtual contour in twilight zone. | ||
| d74285d1 | 2012-02-29 13:59:49 | [truetype] Improve comments. | ||
| b25265c5 | 2012-02-29 13:45:24 | Avoid modulo operators against a power-of-two denominator. * src/afcjk.c (af_hint_normal_stem), src/base/ftoutln.c (ft_contour_has), src/cff/cffgload.c (cff_decoder_parse_charstrings) <cff_op_vvcurveto, cff_op_hhcurveto, cff_op_hvcurveto>, src/gxvalid/gxvcommn.c (GXV_32BIT_ALIGNMENT_VALIDATE), src/gxvalid/gxvfeat.c (gxv_feat_setting_validate): Replace `%' with `&' operator. | ||
| 5621fdd4 | 2012-02-29 13:33:33 | [autofit] Don't synchronize digit widths for light rendering mode. We don't hint horizontally in this mode. * src/autofit/afloader.c (af_loader_load_g) <Hint_Metrics>: Implement it. | ||
| c18c1882 | 2012-02-28 07:52:04 | [type42] Minor code optimization (again). * src/type42/t42parse.c (t42_parse_sfnts): Simplify previous change. | ||
| fcbc82e6 | 2012-02-26 20:54:19 | [smooth] Fix Savannah bug #35604. * src/smooth/ftsmooth.c (ft_smooth_render_generic): Use `FT_Pos' instead of `FT_UInt' for some variables and update comparisons accordingly. A detailed analysis can be found in the bug report. | ||
| c42848e6 | 2012-02-26 19:44:04 | [type42] Minor code optimization. * src/type42/t42parse.c (t42_parse_sfnts): Use bitmask instead of modulo operator. | ||
| 22fff253 | 2012-02-26 08:47:20 | Whitespace. | ||
| bd63334e | 2012-02-26 08:46:05 | * docs/CHANGES: Updated. | ||
| d9577add | 2012-02-26 08:03:57 | [type1] Fix Savannah bug #35608. * src/type1/t1parse.c (T1_Get_Private_Dict): Reject too short dictionaries. | ||
| 03242f58 | 2012-02-26 06:52:56 | [bdf] Support `ENCODING -1 <n>' format. * src/bdf/bdflib.c (_bdf_parse_glyphs) <ENCODING>: Implement it. | ||
| 28dd2c45 | 2012-02-26 06:18:58 | [bdf] Fix Savannah bug #35607. * src/bdf/bdflib.c (_bdf_parse_glyphs) <ENCODING>: Normalize negative encoding values. | ||
| 58cbc465 | 2012-02-26 05:26:56 | [type1] Fix Savannah bug #35606. * src/type1/t1load.c (parse_subrs): Add proper guards for `strncmp'. * src/psaux/psobjs.c (ps_parser_skip_PS_token): Emit error message only if cur < limit. | ||
| c776fc17 | 2012-02-25 14:21:01 | [pcf] Fix Savannah bug #35603. * src/pcf/pcfread.c (pcf_get_properties): Assure final zero byte in `strings' array. | ||
| 82365c0d | 2012-02-25 13:22:40 | [type42] Fix Savannah bug #35602. * src/type42/t42parse.c (t42_parse_sfnts): Check `string_size' more thoroughly. | ||
| 0b1c0c6b | 2012-02-25 10:23:04 | [bdf] Fix Savannah bugs #35599 and #35600. * src/bdf/bdflib.c (ACMSG16): New warning message. (_bdf_parse_glyphs) <_BDF_BITMAP>: Check line length. | ||
| 320d4976 | 2012-02-24 18:06:46 | [bdf] Fix Savannah bugs #35597 and #35598. * src/bdf/bdflib.c (_bdf_is_atom): Fix handling of property value. | ||
| 6b5b6f39 | 2012-02-24 12:26:25 | Prepare source code for amalgamation (6/6). * src/cff/cffdrivr.c: s/Load_Glyph/cff_glyph_load/. * src/cid/cidload.c: s/parse_font_matrix/cid_parse_font_matrix/. s/t1_init_loader/cid_init_loader/. s/t1_done_loader/cid_done_loader/. * src/pxaux/t1cmap.c: s/t1_get_glyph_name/psaux_get_glyph_name/. * src/truetype/ttdriver.c: s/Load_Glyph/tt_glyph_load/. * src/type1/t1load.c: s/parse_font_matrix/t1_parse_font_matrix/. | ||
| 1b99d0a0 | 2012-02-24 10:54:07 | Prepare source code for amalgamation (5/6). * include/freetype/fterrors.h: Undefine FT_KEEP_ERR_PREFIX after using it. | ||
| 95111433 | 2012-02-22 07:01:35 | Prepare source code for amalgamation (4/6). * src/smooth/ftgrays.c, src/raster/ftraster.c: Undefine RAS_ARG, RAS_ARGS, RAS_VAR, and RAS_VARS before defining it. * src/smooth/ftgrays.c: s/TRaster/black_TRaster/, s/PRaster/black_PRaster/. * src/raster/ftraster.c: s/TRaster/gray_TRaster/, s/PRaster/gray_PRaster/. | ||
| d55f16df | 2012-02-21 09:21:19 | Prepare source code for amalgamation (3/6). * src/smooth/ftgrays.c: s/TWorker/black_TWorker/, s/PWorker/black_PWorker/. * src/raster/ftraster.c: s/TWorker/gray_TWorker/, s/PWorker/gray_PWorker/ | ||
| 5ccebc4e | 2012-02-21 08:54:55 | Prepare source code for amalgamation (2/6). * src/smooth/ftgrays.c, src/raster/ftraster.c: Undefine FLOOR, CEILING, TRUNC, and SCALED before defining it. | ||
| 126405ad | 2012-02-21 08:48:39 | Prepare source code for amalgamation (1/6). See discussion starting at http://lists.gnu.org/archive/html/freetype-devel/2012-01/msg00037.html * src/smooth/ftgrays.c: s/TBand/gray_TBand/. * src/raster/ftraster.c: s/TBand/black_TBand/. | ||
| 63486789 | 2012-02-17 14:55:27 | [autofit] Fix outline flags. * src/autofit/afloader.c (af_loader_load_g): Don't reassign `outline.flags' so that this information is preserved. See discussion starting at http://lists.gnu.org/archive/html/freetype-devel/2012-02/msg00046.html | ||
| 2536862d | 2012-02-11 21:42:19 | Improve description of FT_LOAD_PEDANTIC. | ||
| b4e06818 | 2012-02-11 20:56:10 | [truetype] Fix Savannah bug #35466. Jump instructions are now bound to the current function. The MS Windows rasterizer behaves the same, as confirmed by Greg Hitchcock. * src/truetype/ttinterp.h (TT_CallRec): Add `Cur_End' element. * src/truetype/ttobjs.h (TT_DefRecord): Add `end' element. * src/truetype/ttinterp.c (DO_JROT, DO_JMPR, DO_JROF): Check upper bound of jump address. (Ins_FDEF, Ins_CALL, Ins_LOOPCALL, Ins_UNKNOWN, TT_RunIns): Updated. | ||
| 185606a6 | 2012-02-11 14:34:05 | We don't use `extensions'. * include/freetype/internal/ftobjs.h (FT_DriverRec): Remove `extensions' field. | ||
| f24d0793 | 2012-02-11 09:37:46 | Clean up `generic' fields. * include/freetype/internal/ftobjs.h (FT_ModuleRec, FT_LibraryRec): Remove `generic' field since users can't access it. * src/base/ftobjs.c (FT_Done_GlyphSlot): Call `generic.finalizer' as advertised in the documentation of FT_Generic. (Destroy_Module, FT_Done_Library): Updated to changes in `ftobjs.h'. | ||
| 02c0e526 | 2012-02-11 08:29:47 | Formatting. | ||
| e343e87d | 2012-02-07 09:40:11 | [autofit] Harmonize function arguments. * src/autofit/afloader.c, src/autofit/afloader.h: Use `FT_Int32' for `load_flags'. | ||
| 0b7daff0 | 2012-02-07 08:52:41 | * src/cff/cffobjs.c (cff_face_init): Remove unnecessary casts. | ||
| 39333340 | 2012-02-06 22:42:11 | Formatting, whitespace. | ||
| 0ef4b837 | 2012-02-06 22:14:51 | Formatting. | ||
| 25a3f56f | 2012-02-06 22:11:21 | Fix copyright year. | ||
| 12291284 | 2012-02-06 17:59:05 | Whitespace. | ||
| b178b6f8 | 2012-02-06 13:46:58 | Formatting. | ||
| 3e0be75b | 2012-02-04 21:42:49 | Cosmetics. | ||
| 8c1724d6 | 2012-01-30 14:14:43 | [configure] Fix minor grammar nits. | ||
| 5b7fbb44 | 2012-01-27 20:51:27 | Minor documentation improvements regarding threads and faces. | ||
| 7b02b704 | 2012-01-17 16:20:02 | [gxvalid] Fix Savannah bug #35286. Patch submitted by anonymous reporter. * src/gxvalid/gxvcommn.c (gxv_XStateTable_subtable_setup): gxv_set_length_by_ulong_offset() must be called with 3, not 4, the number of the subtables in the state tables; classTable, stateArray, entryTable. | ||
| c7c4d68b | 2012-01-17 15:13:50 | [raccess] Modify for PIC build. Based on the patch provided by Erik Dahlstrom <ed@opera.com>, http://lists.gnu.org/archive/html/freetype-devel/2012-01/msg00010.html Also `raccess_guess_table[]' and `raccess_rule_by_darwin_vfs()' are renamed with `ft_' suffixes. * src/base/ftbase.h: `raccess_rule_by_darwin_vfs()' is renamed to `ft_raccess_rule_by_darwin_vfs()'. * src/base/ftobjs.c: Ditto. * src/base/ftrfork.c: Declarations of FT_RFork_Rule, raccess_guess_rec, are moved to... * include/freetype/internal/ftrfork.h: Here. * include/freetype/internal/ftrfork.h: FT_RFORK_RULE_ARRAY_{BEGIN,ENTRY,END} macros are defined to replace raccess_guess_table[] in both of PIC and non-PIC modes. * src/base/ftrfork.c: raccess_guess_table[] array is rewritten by FT_RFORK_RULE_ARRAY_{BEGIN,ENTRY,END}. * src/base/basepic.h (BasePIC): Add `ft_raccess_guess_table' storage. (FT_RACCESS_GUESS_TABLE_GET): New macro to retrieve the function pointer from `ft_raccess_guess_table' storage in `BasePIC' structure. * src/base/ftrfork.c (FT_Raccess_Guess): Rewritten with FT_RACCESS_GUESS_TABLE_GET. (raccess_get_rule_type_from_rule_index): Add `library' as the first argument to the function, to retrieve the storage of `ft_raccess_guess_table' from it. Also `raccess_guess_table' is replaced by FT_RACCESS_GUESS_TABLE_GET. (ft_raccess_rule_by_darwin_vfs): Ditto. | ||
| 1749d8bc | 2012-01-17 02:00:24 | Remove trailing spaces. | ||
| c24f77ac | 2012-01-16 21:13:05 | Formatting PIC related sources. * src/autofit/afpic.c: Harmonize to FT2 coding conventions. * src/base/basepic.c: Ditto. * src/base/ftpic.c: Ditto. * src/cff/cffpic.c: Ditto. * src/pshinter/pshpic.c: Ditto. * src/psnames/pspic.c: Ditto. * src/raster/rastpic.c: Ditto. * src/sfnt/sfntpic.c: Ditto. * src/smooth/ftspic.c: Ditto. * src/truetype/ttpic.c: Ditto. | ||
| 8a5cea26 | 2012-01-16 20:41:53 | [autofit] Fix the inclusion of "aflatin2.h" in PIC file. * src/autofit/afpic.c: Include "aflatin2.h" when FT_OPTION_AUTOFIT2 is defined, as afglobal.c does so. Unconditionally inclusion causes declared but unimplemented warning by GCC 4.6. | ||
| 4880a0ed | 2012-01-16 18:51:15 | [cff] Remove redundant declarations of cff_cmap_XXX_class_rec. * src/cff/cffpic.c: The declarations of FT_Init_Class_cff_cmap_encoding_class_rec() and FT_Init_Class_cff_cmap_unicode_class_rec() are removed. They can be obtained by the inclusion of cffcmap.h. cffcmap.h invokes FT_DECLARE_CMAP_CLASS() and it declares FT_Init_Class_cff_cmap_encoding_class_rec() etc in PIC mode. | ||
| 3c966818 | 2012-01-15 23:35:31 | Fix redundant declaration warning in PIC mode. Originally FT_DEFINE_{DRIVER,MODULE,RENDERER}() macros were designed to declare xxx_pic_{free,init} by themselves. Because these macros are used at the end of the module interface (e.g. ttdriver.c) and the wrapper source to build a module as a single object (e.g. truetype.c) includes the PIC file (e.g. ttpic.c) before the module interface, these macros are expanded AFTER xxx_pic_{free,init} body when the modules are built as single object. The declaration after the implementation causes the redundant declaration warnings, so the declarations are moved to module PIC headers (e.g. ttpic.h). Separating to other header files are needed for multi build. * include/freetype/internal/ftdriver.h (FT_DEFINE_DRIVER): Remove class_##_pic_free and class_##_pic_init declarations. * include/freetype/internal/ftobjs.h (FT_DEFINE_RENDERER, FT_DEFINE_MODULE): Ditto. * src/base/basepic.h: Insert a comment and fix coding style. * src/autofit/afpic.h: Declare autofit_module_class_pic_{free, init}. * src/cff/cffpic.h: Declare cff_driver_class_pic_{free,init}. * src/pshinter/pshpic.h: Declare pshinter_module_class_pic_{free, init}. * src/psnames/pspic.h: Declare psnames_module_class_pic_{free, init}. * src/raster/rastpic.h: Declare ft_raster{1,5}_renderer_class_pic_{free,init} * src/sfnt/sfntpic.h: Declare sfnt_module_class_pic_{free,init}. * src/smooth/ftspic.h: Declare ft_smooth_{,lcd_,lcdv_}renderer_class_pic_{free,init}. * src/truetype/ttpic.h: Declare tt_driver_class_pic_{free,init}. | ||
| e38acb0d | 2012-01-15 20:05:22 | Make pspic.c to include module error header to fix multi build. * src/psnames/pspic.c: Include `psnamerr.h'. |