|
b5119996
|
2011-07-03T09:46:32
|
|
Whitespace.
|
|
07598339
|
2011-07-02T18:41:36
|
|
Fix Savannah bug #33246.
* src/truetype/ttobjs.c (tt_check_single_notdef): New function.
(tt_face_init): Use it to test FT_FACE_FLAG_SCALABLE.
|
|
9ae6c7c5
|
2011-07-02T12:15:10
|
|
* docs/CHANGES: Updated.
|
|
aecbfe1b
|
2011-07-02T12:09:52
|
|
[ftstroke] Major revision.
The main problems
-----------------
o If FT_STROKER_LINEJOIN_BEVEL was specified, unlimited miter
joins (not bevel joins) were generated. Indeed, the meanings of
`miter' and `bevel' were incorrectly reversed (consistently) in
both the code and comments.
o The way bevel joins were constructed (whether specified
explicitly, or created as a result of exceeding the miter limit)
did not match what is required for stroked text in PostScript or
PDF.
The main fixes
--------------
o The behaviour of FT_STROKER_LINEJOIN_BEVEL has been corrected.
o A new line join style, FT_STROKER_LINEJOIN_MITER_FIXED, has been
introduced to support PostScript and PDF miter joins.
o FT_STROKER_LINEJOIN_MITER_VARIABLE has been introduced as an
alias for FT_STROKER_LINEJOIN_MITER.
Additionally, a variety of stroking errors have been fixed. These
would cause various artifacts (including points `at infinity'),
especially when stroking poor quality fonts.
See
http://lists.gnu.org/archive/html/freetype-devel/2011-07/msg00001.html
for example documents. The FreeType stroker now produces results
very similar to that produced by GhostScript and Distiller for these
fonts.
Other problems
--------------
The following problems have been resolved:
o Inside corners could be generated incorrectly. Intersecting the
inside corner could cause a missing triangular area and other
effects.
The intersection point can only be used if the join is between
two lines and both lines are long enough. The `optimization'
condition in `ft_stroker_inside' has been corrected; this
requires the line length to be passed into various functions and
stored in `FT_StrokerRec'.
o Incorrect cubic curves could be generated. The angle
calculations in `FT_Stroker_CubicTo' have been corrected to
handle the case of the curve crossing the +/-PI direction.
o If the border radius was greater than the radius of curvature of
a curve, then the negative sector would end up outside (not
inside) the border. This situation is now recognized and the
negative sector is circumnavigated in the opposite direction.
(If round line joins are being used, this code is disabled
because the line join will always cover the negative sector.)
o When a curve is split, the arcs may not join smoothly (especially
if the curve turns sharply back on itself). Changes in
direction between adjacent arcs were not handled. A round
corner is now added if the deviation from one arc to the next is
greater than a suitable threshold.
o The current direction wasn't retained if a the outline contained
a zero length lineto or a curve that was determined to be
`basically a point'. This could cause a spurious join to be
added.
o Cubics with close control points could be mishandled. All eight
cases are now distinguished correctly.
Other improvements
------------------
o Borders for cubic curves could be too `flat'.
FT_SMALL_CUBIC_THRESHOLD has been reduced a little to prevent
this.
o The handling and use of movable points has been simplified a
little.
o Various values are now computed only if the results are actually
needed.
o The directions of the outer and inner borders have been swapped,
as recommended by Graham Asher.
* src/base/ftstroke.c: Revised.
* include/freetype/ftstroke.h: Updated.
|
|
ee5d3b59
|
2011-06-30T15:08:15
|
|
* builds/toplevel.mk: We use git, not CVS, thus skip `.gitignore'.
|
|
073986ec
|
2011-06-30T06:20:30
|
|
Minor doc fixes.
|
|
54f187ab
|
2011-06-29T10:01:42
|
|
Document last commit.
|
|
4bf22196
|
2011-06-29T09:45:51
|
|
Improve documentation of FT_Get_Glyph_Name.
|
|
96ddc679
|
2011-06-29T09:15:54
|
|
Fix Savannah bug #33663.
* src/bdf/bdflib.c (_bdf_parse_glyphs): Handle negative values for
ENCODING correctly.
|
|
da9dbf89
|
2011-06-25T07:16:22
|
|
* Version 2.4.5 released.
=========================
Tag sources with `VER-2-4-5'.
* docs/CHANGES: Updated.
* docs/VERSION.DLL: Update documentation and bump version number to
2.4.5
* 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.4/2.4.5/, s/244/245/.
* include/freetype/freetype.h (FREETYPE_PATCH): Set to 5.
* builds/unix/configure.raw (version_info): Set to 13:0:7.
|
|
3ae2c70d
|
2011-06-24T13:18:41
|
|
Minor documentation fixes.
|
|
39746194
|
2011-06-20T19:20:50
|
|
Merge branch 'master' of git.sv.gnu.org:/srv/git/freetype/freetype2
Conflicts:
ChangeLog
|
|
4696dde2
|
2011-06-20T19:09:02
|
|
* src/autofit/aflatin.c (af_latin_metrics_scale_dim): Fix change
from 2011-05-04.
|
|
c7e8028f
|
2011-06-19T23:00:11
|
|
[gxvalid] make the `prop' validation tracing verbose.
* src/gxvalid/gxvprop.c: Add tracing messages for errors.
|
|
c63c6f72
|
2011-06-19T22:54:40
|
|
[autogen.sh] Reflect environment variable LIBTOOLIZE.
|
|
ea79b846
|
2011-06-18T08:06:57
|
|
Update license documentation.
* docs/GPL.TXT: Renamed to...
* docs/GPLv2.TXT: This.
* docs/LICENSE.TXT: Updated.
|
|
41aa4125
|
2011-06-15T20:02:49
|
|
Fix wrong indents in src/cache/ftcmru.c.
|
|
e62c876b
|
2011-06-15T02:48:33
|
|
Fix g++4.6 compiler warnings in module drivers.
The background is same with previous commit.
* src/truetype/ttgxvar.c (ft_var_readpackedpoints):
Init `points'. (TT_Vary_Get_Glyph_Deltas): Init
`delta_xy'. (TT_Get_MM_Var): Init `mmvar'.
* src/type1/t1load.c (T1_Get_MM_Var): Ditto.
* src/cff/cffdrivr.c (cff_ps_get_font_info): Init
`font_info'.
* src/cff/cffload.c (cff_index_get_pointers): Init `t'.
(cff_font_load): Init `sub'.
* src/cff/cffobjs.c (cff_size_init): Init `internal'.
(cff_face_init): Init `cff'.
* src/pfr/pfrload.c (pfr_extra_item_load_stem_snaps):
Init `snaps'.
* src/pcf/pcfread.c (pcf_get_properties): Init `properties'.
(pcf_get_bitmaps): Init `offsets'. (pcf_get_encodings):
Init `tmpEncoding'.
* src/sfnt/ttload.c (tt_face_load_gasp): Init `gaspranges'.
* src/sfnt/ttsbit.c (Load_SBit_Image): Init `components'.
* src/cache/ftcmru.c (FTC_MruList_New): Init `node'.
* src/gzip/ftgzip.c (FT_Stream_OpenGzip): Init `zip' and
`zip_buff'.
* src/lzw/ftlzw.c (FT_Stream_OpenLZW): Init `zip'.
* src/bzip2/ftbzip2.c (FT_Stream_OpenBzip2): Init `zip'.
|
|
dc185ee2
|
2011-06-15T02:36:52
|
|
Fix misleading comment, s/buffer allocator/FT_NEW() families/g
|
|
65a44988
|
2011-06-15T01:44:24
|
|
[base] Fix g++4.6 compiler warnings in src/base/*.c.
Passing uninitialized pointer to the buffer allocator is
not problematic theoretically (as far as the returned
pointer is checked before writing), but g++4.6 dislikes
it and warns by -Wuninitialized. Initialize them by NULL.
* src/base/ftobjs.c (FT_Stream_New): Init `stream'.
(new_memory_stream): Ditto.
(FT_New_GlyphSlot): Init `slot'.
(FT_CMap_New): Init `cmap'.
(open_face_PS_from_sfnt_stream): Init `sfnt_ps'.
(Mac_Read_POST_Resource): Init `pfb_data'.
(Mac_Read_sfnt_Resource): Init `sfnt_data'.
* src/base/ftrfork.c (FT_Raccess_Get_DataOffsets):
Init `offsets_internal' and `ref'.
(raccess_guess_darwin_hfsplus): Init `newpath'.
(raccess_guess_darwin_newvfs): Ditto.
* src/base/ftbitmap.c (ft_bitmap_assure_buffer):
Init `buffer'.
* src/base/ftstroke.c (FT_Stroker_New): Init `stroker'.
|
|
75b91a49
|
2011-06-15T01:10:33
|
|
[gxvalid] Cleanup.
Some invalid, overrunning, unrecommended non-zero values
are cared in paranoid validation mode only. There are
many lines looking like:
if ( valid->root->level >= FT_VALIDATE_PARANOID )
FT_INVALID_xxx;
To simplify them, GXV_SET_ERR_IF_PARANOID( err ) is
introduced for more paranoid validation in future.
* src/gxvalid/gxvcommn.h (IS_PARANOID_VALIDATION):
New macro to assure valid->root->level is more or
equal to FT_VALIDATE_PARANOID. (GXV_SET_ERR_IF_PARANOID):
New macro to raise an error if in paranoid validation.
* src/gxvalid/gxvcommn.c: Use GXV_SET_ERR_IF_PARANOID().
* src/gxvalid/gxvfeat.c: Ditto.
* src/gxvalid/gxvjust.c: Ditto.
* src/gxvalid/gxvkern.c: Ditto.
* src/gxvalid/gxvmort.c: Ditto.
* src/gxvalid/gxvmort0.c: Ditto.
* src/gxvalid/gxvmort1.c: Ditto.
* src/gxvalid/gxvmort2.c: Ditto.
* src/gxvalid/gxvmorx1.c: Ditto.
* src/gxvalid/gxvmorx2.c: Ditto.
|
|
f6f9b667
|
2011-06-14T23:55:23
|
|
[gxvalid] Fix gcc4.6 compiler warnings in gxvtrak.c.
* src/gxvalid/gxvtrak.c (gxv_trak_trackTable_validate):
Check different entries pointing same traking value.
(gxv_trak_validate): Remove unused variable `table_size'.
|
|
05fc72c5
|
2011-06-14T23:54:10
|
|
[gxvalid] Fix gcc4.6 compiler warnings in gxvmorx*.c.
* src/gxvalid/gxvmorx.c (gxv_morx_subtables_validate):
Conditionalize unvalidated variable `subFeatureFlags'.
(gxv_morx_chain_validate): Conditionalize unvalidated
variable `defaultFlags'.
* src/gxvalid/gxmorx0.c
(gxv_morx_subtable_type0_entry_validate):
Conditionalize unvalidated variables; `markFirst',
`dontAdvance', `markLast', `verb'.
* src/gxvalid/gxmorx1.c
(gxv_morx_subtable_type1_entry_validate): Conditionalize
unvalidated variables; `setMark', `dontAdvance'.
* src/gxvalid/gxvmorx2.c
(gxv_morx_subtable_type2_ligActionOffset_validate):
Conditionalize unvalidated variables; `last', `store'.
Checking for overrunning offset is added.
(gxv_morx_subtable_type2_entry_validate):
Conditionalize unvalidated variables; `setComponent',
`dontAdvance', `performAction'.
(gxv_morx_subtable_type2_ligatureTable_validate):
Check if the GID for ligature does not exceed the
max GID in `maxp' table.
* src/gxvalid/gxvmort5.c
(gxv_morx_subtable_type5_InsertList_validate):
Conditionalize unvalidated loading of `insert_glyphID'
array. (gxv_morx_subtable_type5_entry_validate):
Conditionalize unvalidated variables; `setMark',
`dontAdvance', `currentIsKashidaLike',
`markedIsKashidaLike', `currentInsertBefore',
`markedInsertBefore'.
|
|
56be3ac9
|
2011-06-14T23:53:12
|
|
[gxvalid] Fix gcc4.6 compiler warnings in gxvmort*.c.
* src/gxvalid/gxvmort.c (gxv_mort_subtables_validate):
Conditionalize unvalidated variable `subFeatureFlags'.
(gxv_mort_chain_validate): Conditionalize unvalidated
variable `defaultFlags'.
* src/gxvalid/gxmort0.c
(gxv_mort_subtable_type0_entry_validate): Check the
conflict of the marks for the glyphs.
* src/gxvalid/gxmort1.c
(gxv_mort_subtable_type1_offset_to_subst_validate):
Local variables `min_gid', `max_gid' are replaced by
variables in the validator.
(gxv_mort_subtable_type1_entry_validate): Conditionalize
unvalidated variables; `setMark', `dontAdvance'.
(gxv_mort_subtable_type1_substTable_validate):
Validate the GID by the min/max GIDs in the validator.
* src/gxvalid/gxvmort2.c
(gxv_mort_subtable_type2_ligActionOffset_validate):
Conditionalize unvalidated variables; `last', `store'.
Checking for overrunning offset is added.
(gxv_mort_subtable_type2_entry_validate):
Conditionalize unvalidated variables; `setComponent',
`dontAdvance'.
(gxv_mort_subtable_type2_ligatureTable_validate):
Check if the GID for ligature does not exceed the
max GID in `maxp' table.
* src/gxvalid/gxvmort5.c
(gxv_mort_subtable_type5_InsertList_validate):
Conditionalize unvalidated loading of `insert_glyphID'
array. (gxv_mort_subtable_type5_entry_validate):
Conditionalize unvalidated variables; `setMark',
`dontAdvance', `currentIsKashidaLike',
`markedIsKashidaLike', `currentInsertBefore',
`markedInsertBefore'.
|
|
20c126c1
|
2011-06-14T23:50:39
|
|
[gxvalid] Fix gcc4.6 compiler warnings in gxvkern.c.
* src/gxvalid/gxvkern.c
(gxv_kern_subtable_fmt0_pairs_validate): Conditionalize
unvalidated variable `kernValue'.
(gxv_kern_subtable_fmt1_entry_validate): Conditionalize
unvalidated variables; `push', `dontAdvance', `kernAction',
`kernValue'.
(gxv_kern_coverage_new_apple_validate): Conditionalize
trace-only variables; `kernVertical', `kernCrossStream',
`kernVariation'.
(gxv_kern_coverage_classic_apple_validate): Conditionalize
trace-only variables; `horizontal', `cross_stream'.
(gxv_kern_coverage_classic_microsoft_validate):
Conditionalize trace-only variables; `horizontal',
`minimum', `cross_stream', `override'.
(gxv_kern_subtable_validate): Conditionalize trace-only
variables; `version', `tupleIndex'.
|
|
ce015ec8
|
2011-06-14T23:49:34
|
|
[gxvalid] Fix gcc4.6 compiler warnings in gxvjust.c.
* src/gxvalid/gxvjust.c (gxv_just_check_max_gid):
New function to unify the checks of too large GID.
(gxv_just_wdp_entry_validate): Conditionalize unvalidated
variables; `beforeGrowLimit', `beforeShrinkGrowLimit',
`afterGrowLimit', `afterShrinkGrowLimit', `growFlags',
`shrinkFlags'. Additional check for non-zero values in
unused storage `justClass' is added.
(gxv_just_actSubrecord_type0_validate): Conditionalize
unvalidated variable `order'. GID is checked by
gxv_just_check_max_gid(). Additional check for upside-down
relationship between `lowerLimit' and `upperLimit' is added.
(gxv_just_actSubrecord_type1_validate): GID is checked by
gxv_just_check_max_gid().
(gxv_just_actSubrecord_type2_validate): Conditionalize
unvalidated variable `substThreshhold'. GID is checked by
gxv_just_check_max_gid().
(gxv_just_actSubrecord_type5_validate): GID is checked by
gxv_just_check_max_gid().
(gxv_just_classTable_entry_validate): Conditionalize
unvalidated variables; `setMark', `dontAdvance',
`markClass', `currentClass'.
|
|
248aa639
|
2011-06-14T23:47:21
|
|
[gxvalid] Preparation to fix gcc4.6 compiler warnings.
* src/gxvalid/gxvcommn.h (GXV_LOAD_TRACE_VARS): New macro to
conditionalize the variable which is only used for trace messages.
Automatically set by FT_DEBUG_LEVEL_TRACE.
(GXV_LOAD_UNUSED_VARS): New macro to conditionalize the loading of
unvalidated variables. Undefined by default to calm gcc4.6 warning.
(GXV_ValidatorRec.{min_gid,max_gid}): New variables to hold defined
GID ranges, for the comparison of GID ranges in different subtables.
|
|
f3e2a97d
|
2011-06-14T08:32:13
|
|
Fix URLs.
|
|
58d1a5ee
|
2011-06-08T09:32:56
|
|
[autofit] Remove unused structure member.
* src/autofit/afhints.h (AF_SegmentRec): Remove `contour'.
* src/autofit/aflatin.c (af_latin_hints_compute_segments),
src/autofit/aflatin2.c (af_latin2_hints_compute_segments): Updated.
|
|
fe0f16d2
|
2011-06-01T10:36:04
|
|
Fix comments.
|
|
849bde1f
|
2011-05-30T07:29:04
|
|
Merge branch 'master' of git.sv.gnu.org:/srv/git/freetype/freetype2
Conflicts:
ChangeLog
|
|
6b19fd5c
|
2011-05-30T07:27:59
|
|
Fix g++ 4.6 compilation.
* src/autofit/afhints.c (af_glyph_hints_dump_segments,
af_glyph_hints_dump_edges): Use cast.
|
|
71cc1a83
|
2011-05-30T07:20:37
|
|
Fix gcc 4.6 compiler warnings.
* src/autofit/afcjk.c (af_cjk_metrics_init_blues): Use casts and
remove unused variables.
* src/autofit/aflatin.c (af_latin_hints_compute_edges): Comment out
`up_dir'.
* src/smooth/ftsmooth.c (ft_smooth_render_generic): Use `height_org'
and `width_org' conditionalized.
|
|
c32d54c9
|
2011-05-29T01:33:34
|
|
[mac] Conditionalize the inclusion of "AvailabilityMacros.h".
The native SDK on earliest Mac OS X (10.0-10.1) did not have
"AvailabilityMacros.h". To prevent the inclusion of missing
header file, ECANCELED (introduced in 10.2) in POSIX header
file <errno.h> is checked to detect the system version.
* include/freetype/config/ftconfig.h: Conditionalize the
inclusion of "AvailabilityMacros.h".
* builds/unix/ftconfig.in: Ditto.
* builds/vms/ftconfig.h: Ditto.
|
|
735e5abb
|
2011-05-27T10:22:42
|
|
[autofit] Improve tracing of hinting process.
* src/autofit/aflatin.c (af_latin_hint_edges): Add tracing message
`ADJUST'.
|
|
3ad8f355
|
2011-05-24T06:22:32
|
|
Reduce warnings for MS Visual Studio 2010.
* src/autofit/afhints.c (af_glyph_hints_get_num_segments,
af_glyph_hints_get_segment_offset) [!FT_DEBUG_AUTOFIT]: Provide
return value.
* src/cff/cffgload.c (cff_slot_load): Add cast.
* src/truetype/ttobjs.c (tt_check_trickyness_sfnt_ids): Use proper
loop variable type.
|
|
79405d75
|
2011-05-24T06:10:47
|
|
Documentation fix.
|
|
ebd14a59
|
2011-05-16T12:47:25
|
|
Automake component `builds/unix/install-sh' is removed.
* builds/unix/install-sh: Removed. It is not needed to
include repository, because autogen.sh installs it.
* builds/unix/.gitignore: Register install-sh.
|
|
4e8f9de9
|
2011-05-12T14:30:15
|
|
[autofit] Make trace message for CJK bluezone more verbose.
|
|
27b20e9a
|
2011-05-09T09:48:49
|
|
Formatting, minor doc improvements.
|
|
084abf04
|
2011-05-08T19:07:13
|
|
[autofit] Add bluezones for CJK Ideographs.
To remove extremas of vertical strokes of CJK Ideographs at
low resolution and make the top and bottom horizontal stems
aligned, bluezones for CJK Ideographs are calculated from
sample glyphs. At present, vertical bluezones (bluezones
to align vertical stems) are disabled by default. For detail, see
http://lists.gnu.org/archive/html/freetype-devel/2011-04/msg00070.html
http://lists.gnu.org/archive/html/freetype-devel/2011-04/msg00092.html
http://lists.gnu.org/archive/html/freetype-devel/2011-05/msg00001.html
* include/freetype/internal/fttrace.h: New trace component `afcjk'.
* src/autofit/afcjk.h (AF_CJK{Blue,Axis,Metric}Rec): Add CJK version
for AF_Latin{Blue,Axis,Metric}Rec.
(af_cjk_metrics_check_digits): Ditto, shared with Indic module.
(af_cjk_metrics_init_widths): Ditto.
(af_cjk_metrics_init): Take AF_CJKMetric instead of AF_LatinMetric.
(af_cjk_metrics_scale): Ditto (declaration).
(af_cjk_hints_init): Ditto (declaration).
(af_cjk_hints_apply): Ditto (declaration).
* src/autofit/afcjk.c (af_cjk_metrics_scale): Ditto (body).
(af_cjk_hints_init): Ditto (body).
(af_cjk_hints_apply): Ditto (body).
(af_cjk_metrics_init_widths): Duplicate af_latin_metrics_init_widths.
(af_cjk_metrics_check_digits): Duplicate af_latin_metrics_check_digits.
(af_cjk_metrics_init): Call CJK bluezone initializer.
(af_cjk_metrics_scale_dim): Add code to scale bluezones.
(af_cjk_hints_compute_blue_edges): New function, CJK version of
af_latin_hints_compute_blue_edges.
(af_cjk_metrics_init_blues): New function, CJK version of
af_latin_metrics_init_blues.
(af_cjk_hints_edges): Add code to align the edge stems to blue zones.
* src/autofit/afindic.c (af_indic_metrics_init): Take AF_CJKMetric
instead of AF_LatinMetric, and initialize as af_cjk_metrics_init.
However bluezones are not initialized.
(af_indic_metrics_scale): Take AF_CJKMetric instead of AF_LatinMetric.
(af_indic_hints_init): Ditto.
(af_indic_hints_apply): Ditto.
* docs/CHANGES: Note about CJK bluezone support.
|
|
d2e82aa0
|
2011-05-06T19:04:30
|
|
[autofit] Remove unused struct member.
* src/autofit/aflatin.h (AF_LatinAxis): Remove `control_overshoot'.
|
|
a3a0f57a
|
2011-05-04T06:14:30
|
|
* src/autofit/aflatin.c (af_latin_metrics_scale_dim): Simplify.
|
|
c3135e43
|
2011-05-02T06:04:15
|
|
[autofit] Fix and add comments.
|
|
3a0844c8
|
2011-05-01T13:44:44
|
|
[autofit] Add more debugging functions.
* src/autofit/afhints.c (af_glyph_hints_get_num_segments,
af_glyph_hints_get_segment_offset): New functions.
|
|
3cf3b9e3
|
2011-05-01T12:30:37
|
|
Minor formatting.
|
|
7c6da3d7
|
2011-05-01T19:06:24
|
|
Add new option `--disable-mmap' to configure script.
* builds/unix/configure.raw: New option `--disable-mmap'
is added. It is for the developers to simulate the systems
without mmap() (like 4.3BSD, minix etc) on POSIX systems.
|
|
58cb3593
|
2011-05-01T00:47:43
|
|
[truetype] Recalculate the sfnt table checksum always.
* src/truetype/ttobjs.c (tt_get_sfnt_checksum): Recalculate
the sfnt table checksum even if non-zero value is writte in
the TrueType font header. Some bad PDF generators write
wrong values. For detail, see examples and benchmark tests
of the latency by recalculation:
http://lists.gnu.org/archive/html/freetype-devel/2011-04/msg00091.html
http://lists.gnu.org/archive/html/freetype-devel/2011-04/msg00096.html
|
|
1e89d15a
|
2011-04-30T17:55:57
|
|
[truetype] Register a set of tricky fonts, NEC FA family.
* src/truetype/ttobjs.c (tt_check_trickyness_sfnt_ids):
Add 8 checksum sets for NEC FA family. For the tricky fonts
without some tables (e.g. NEC FA fonts lack cvt table),
extra check is added to assure that 0-length table in the
registry is not included in the font.
|
|
10385e37
|
2011-04-30T17:49:45
|
|
Remove unrequired `else' from ttobjs.c::tt_get_sfnt_checksum().
|
|
89208861
|
2011-04-30T00:11:07
|
|
[truetype] Fix a bug in the sfnt table checksum getter.
* src/truetype/ttobjs.c (tt_get_sfnt_checksum): Check the
return value of face->goto_table() correctly.
|
|
b9aa1f13
|
2011-04-28T09:09:45
|
|
[autofit] Improve tracing messages.
* src/autofit/aflatin.c (af_latin_metrics_init_blues,
af_latin_align_linked_edge, af_latin_hint_edges): Do it.
|
|
86b7b2f6
|
2011-04-26T03:46:12
|
|
[truetype] Revert the reordering of trickyness checking.
Trickyness check by the family name is faster than that by
the checksum.
|
|
abc47aa1
|
2011-04-25T23:51:04
|
|
[truetype] Always check the checksum to identify tricky fonts.
Some PDF generators mangle the family name badly, prioritize
the check by the sfnt table checksums than the check by the
family name. For sample PDF, see
http://lists.gnu.org/archive/html/freetype-devel/2011-04/msg00073.html
* src/truetype/ttobjs.c (tt_check_trickyness): Exchange the order
of tt_check_trickyness_family() and tt_check_trickyness_sfnt_ids().
|
|
233f9d5d
|
2011-04-22T10:14:07
|
|
[autofit] Add more Indic scripts with hanging baseline.
* src/autofit/afindic.c (af_indic_uniranges): Tibetan, Limbu,
Sundanese, Meetei Mayak, Syloti Nagri and Sharada scripts are
added.
|
|
a8dbf7db
|
2011-04-21T08:25:14
|
|
Merge branch 'master' of git.sv.gnu.org:/srv/git/freetype/freetype2
Conflicts:
ChangeLog
|
|
8c82ec5b
|
2011-04-21T08:21:37
|
|
Always ignore global advance.
This makes FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH redundant,
deprecated, and ignored. The new behavior is what every major user
of FreeType has been requesting. Global advance is broken in many
CJK fonts. Just ignoring it by default makes most sense.
* src/truetype/ttdriver.c (tt_get_advances),
src/truetype/ttgload.c (TT_Get_HMetrics, TT_Get_VMetrics,
tt_get_metrics, compute_glyph_metrics, TT_Load_Glyph),
src/truetype/ttgload.h: Implement it.
* docs/CHANGES: Updated.
|
|
94eff482
|
2011-04-21T14:03:39
|
|
Fix mismatched indents in src/autofit/aflatin2.c.
|
|
a345c0e1
|
2011-04-21T10:58:33
|
|
[autofit] Blur CJK stems if too many to preserve their gaps
|
|
d503b1bc
|
2011-04-18T19:05:28
|
|
Integrate autofitter debugging stuff.
* devel/ftoption.h, include/freetype/config/ftoption.h
(FT_DEBUG_AUTOFIT): New macro.
* include/freetype/internal/fttrace.h: Add trace components for
autofitter.
* src/autofit/aftypes.h (AF_LOG): Removed.
(_af_debug): Removed.
* src/autofit/*: s/AF_DEBUG/FT_DEBUG_AUTOFIT/.
s/AF_LOG/FT_TRACE5/.
Define FT_COMPONENT where necessary.
|
|
de2de6b1
|
2011-04-18T16:11:18
|
|
Remove dead debugging code.
|
|
575078d2
|
2011-04-18T15:33:17
|
|
Formatting nits.
|
|
149f5438
|
2011-04-18T15:09:38
|
|
Synchronize config files.
* builds/unix/ftconfig.in: Copy missing assembler routines from
include/freetype/config/ftconfig.h.
|
|
9b008750
|
2011-04-13T13:37:37
|
|
Fix Savannah bug #33047.
Patch submitted by anonymous reporter.
* src/psaux/psobjs.c (ps_table_add): Use FT_PtrDist for pointer
difference.
|
|
b9baff23
|
2011-04-13T00:29:41
|
|
Document BBox and CBox computation problems for tricky fonts.
|
|
21b1a0de
|
2011-04-12T09:26:43
|
|
Fix reading of signed integers from files on 64bit platforms.
Previously, signed integers were converted to unsigned integers, but
this can fail because of sign extension. For example, 0xa344a1eb
becomes 0xffffffffa344a1eb.
We now do the reverse which is always correct because the integer
size is the same during the cast from unsigned to signed.
* include/freetype/internal/ftstream.h, src/base/ftstream.c
(FT_Stream_Get*): Replace with...
(FT_Stream_GetU*): Functions which read unsigned integers.
Update all macros accordingly.
* src/gzip/ftgzip.c (ft_gzip_get_uncompressed_size): Updated.
|
|
7f03a246
|
2011-04-07T07:20:38
|
|
Update Unicode ranges for CJK autofitter; in particular, add Hangul.
* src/autofit/afcjk.c (af_cjk_uniranges): Update to Unicode 6.0.
|
|
948a8fb6
|
2011-04-04T13:02:08
|
|
Fix formatting of autofit debug dumps.
* src/autofit/afhints.c (af_glyph_hints_dump_points,
af_glyph_hints_dump_segments, af_glyph_hints_dump_edges): Adjust
column widths.
|
|
9f5ed811
|
2011-04-02T07:23:00
|
|
Cosmetics.
|
|
544adf73
|
2011-04-02T07:15:33
|
|
Whitespace, typo.
|
|
ef115518
|
2011-03-30T09:29:05
|
|
* src/autofit/aftypes.h (AF_OutlineRec): Removed, unused.
|
|
90f0487f
|
2011-03-28T15:41:49
|
|
Cosmetics.
|
|
f3c57917
|
2011-03-26T09:03:32
|
|
Copyright.
|
|
360646c9
|
2011-03-24T09:29:23
|
|
* src/cff/cfftypes.h (CFF_MAX_CID_FONTS): Increase to 256.
This limit is given on p. 37 of Adobe Tech Note #5014.
|
|
01caf4a7
|
2011-03-23T05:19:59
|
|
* src/truetype/ttpload.c(tt_face_load_loca): Fix mismatch warning.
|
|
6e3fee0b
|
2011-03-21T09:28:52
|
|
Typo.
|
|
da08e697
|
2011-03-20T18:28:31
|
|
Ignore *.o and *.a files.
|
|
af7b8b1a
|
2011-03-20T07:51:57
|
|
* src/sfnt/sfobjs.c (sfnt_open_font): Check number of TTC subfonts.
|
|
8bd77f90
|
2011-03-19T15:27:04
|
|
More C++ compilation fixes.
* src/autofit/afhints.c (af_glyph_hints_dump_points,
af_glyph_hints_dump_segments, af_glyph_hints_dump_edges)
[__cplusplus]: Protect with `extern "C"'.
|
|
c7f26a19
|
2011-03-19T02:28:21
|
|
C++ compilation fixes.
* src/autofit/aflatin.c (af_latin_hints_apply), src/autofit/afcjk.c
(af_cjk_hints_apply): Use cast for `dim'.
|
|
8fb88414
|
2011-03-17T20:24:57
|
|
A better fix for Savannah bug #32671.
* src/smooth/ftgrays.c (gray_render_conic): Clean up code and
replace WHILE loop with a more natural DO-WHILE construct.
|
|
437fb8eb
|
2011-03-16T08:54:02
|
|
* src/base/ftstroke.c (FT_StrokerRec): Remove unused `valid' field.
Suggested by Graham Asher.
|
|
cecd9127
|
2011-03-09T06:18:28
|
|
Make FT_Sfnt_Table_Info return the number of SFNT tables.
* src/sfnt/sfdriver.c (sfnt_table_info): Implement it.
* include/freetype/tttables.h: Update documentation.
* docs/CHANGES: Updated.
|
|
d87389e9
|
2011-03-08T05:01:21
|
|
Whitespace.
|
|
3fd158d0
|
2011-03-07T09:33:53
|
|
Fix Savannah bug #27988.
* src/cff/cffobjs.c (remove_style): New function.
(cff_face_init): Use it to strip off the style part of the family
name.
|
|
9c111b01
|
2011-03-07T06:07:53
|
|
* docs/CHANGES: Updated.
|
|
6c045535
|
2011-03-07T05:40:42
|
|
Quick fix for Savannah bug #32671.
This isn't the optimal solution yet, but it restores the previous
rendering quality (more or less).
* src/smooth/ftgrays.c (gray_render_conic): Do more splitting.
|
|
c9bdfa7e
|
2011-03-06T18:35:37
|
|
Fix autohinting fallback.
* src/base/ftobjs.c (FT_Load_Glyph): Assure that we only check TTFs,
ignoring CFF-based OTFs.
|
|
4d0586f0
|
2011-03-06T18:22:08
|
|
Whitespace.
|
|
576fc2c0
|
2011-03-02T03:52:36
|
|
Add AF_CONFIG_OPTION_USE_WARPER to control the autofit warper.
* devel/ftoption.h, include/freetype/config/ftoption.h
(AF_CONFIG_OPTION_USE_WARPER): New macro.
* src/autofit/aftypes.h (AF_USE_WARPER): Remove.
* src/autofit/*: s/AF_USE_WARPER/AF_CONFIG_OPTION_USE_WARPER/.
* src/autofit/afwarp.c [!AF_CONFIG_OPTION_USE_WARPER]: Replace dummy
variable assignment with a typedef.
|
|
e547a656
|
2011-02-26T18:39:10
|
|
[autofit] More comments, formatting, whitespace.
|
|
b7fc0c74
|
2011-02-26T18:36:21
|
|
[autofit] Slight simplifications.
* src/autofit/aflatin.c (af_latin_hints_link_segments): Remove
test which always returns false.
(af_latin_hints_compute_blue_edges): Remove redundant assignment.
|
|
6cfbb23c
|
2011-02-26T17:32:38
|
|
[autofit] Some comments. Whitespace.
|
|
e7d1fb31
|
2011-02-24T20:01:00
|
|
* docs/PROBLEMS: Mention rendering differences on different
platforms.
Suggested and worded by Jason Owen <jason.a.owen@gmail.com>.
|
|
6c286896
|
2011-02-24T05:52:14
|
|
[autofit] Comment out unused code.
* src/autofit/aflatin.c, src/autofit/aflatin2.c
(af_latin_hints_compute_edges): Do it.
|
|
f42cc539
|
2011-02-24T05:18:46
|
|
* src/autofit/afhints.h (AF_GlyphHints): Remove unused field.
|
|
6af02423
|
2011-02-22T10:29:30
|
|
[autofit] Add ASCII drawing for better explanation.
|
|
ae6d1d7b
|
2011-02-20T19:13:25
|
|
[cache] Fix an off-by-one bug in FTC_Manager_RemoveFaceID().
Found by <ychen1392001@yahoo.com.cn>, see detail in
http://lists.gnu.org/archive/html/freetype/2011-01/msg00023.html
* src/cache/ftccache.c (FTC_Cache_RemoveFaceID): Check the node
buckets[cache->p + cache->mask] too.
|
|
7ad15d59
|
2011-02-20T07:30:46
|
|
[autofit] Document warper.
|
|
ff809507
|
2011-02-19T23:09:26
|
|
Fall back to autohinting if a TTF/OTF doesn't contain any bytecode.
This is Savannah patch #7471.
* src/base/ftobjs.c (FT_Load_Glyph): Implement it.
|