Behdad Esfahbod
f4c9514935
[HB] Simplify more arrays
2009-11-02 14:40:09 -05:00
Behdad Esfahbod
c9a7cbe9cb
[HB] Use ArrayOf<> in GSUB
2009-11-02 14:40:09 -05:00
Behdad Esfahbod
5f810363ac
[HB] Add ArrayOf<>
2009-11-02 14:40:09 -05:00
Behdad Esfahbod
238c855fcd
[HB] Use OffsetTo<> for Coverage
2009-11-02 14:40:09 -05:00
Behdad Esfahbod
3d54bd1293
[HB] Use OffsetTo<> in more places
2009-11-02 14:40:09 -05:00
Behdad Esfahbod
9e4d9d7b27
[HB] Add OffsetTo template.
2009-11-02 14:40:09 -05:00
Behdad Esfahbod
e07f89295b
[HB] Automate int-type size assertion
2009-11-02 14:40:09 -05:00
Behdad Esfahbod
8b83580331
[HB] Use templates for Null objects
...
Also use a common pool for all nul-content ones.
2009-11-02 14:40:08 -05:00
Behdad Esfahbod
6e13d41401
[HB] Remove obsolete comment
2009-11-02 14:40:08 -05:00
Behdad Esfahbod
9f721cf380
[GSUB] Start ChainContextSubst
2009-11-02 14:40:08 -05:00
Behdad Esfahbod
7fca9e5245
[GSUB] Implement ContextSubstFormat3
2009-11-02 14:40:08 -05:00
Behdad Esfahbod
1ff926a568
[GSUB] Implement ContextSubstFormat2
2009-11-02 14:40:08 -05:00
Behdad Esfahbod
fc36d9453e
[GSUB] Add GSUB::substitute_lookup()
2009-11-02 14:40:08 -05:00
Behdad Esfahbod
c43562b2a7
[GSUB] Finish ContextSubstFormat1
2009-11-02 14:40:08 -05:00
Behdad Esfahbod
5ee2189622
[HB] Fix typo
2009-11-02 14:40:08 -05:00
Behdad Esfahbod
6b59c9b445
[HB] Add TODO item
2009-11-02 14:40:08 -05:00
Behdad Esfahbod
c5419b6cf2
[HB] Remove DEFINE_NON_INSTANTIABLE
2009-11-02 14:40:08 -05:00
Behdad Esfahbod
0dff25f036
[HB] Remove get_size()
2009-11-02 14:40:07 -05:00
Behdad Esfahbod
25c6c9a3f6
[GSUB] ContextSubst format 1
2009-11-02 14:40:07 -05:00
Behdad Esfahbod
f702295103
[GSUB] Shuffle
2009-11-02 14:40:07 -05:00
Behdad Esfahbod
a83e08f872
[HarfBuzz] Start a TODO file
2009-11-02 14:40:07 -05:00
Behdad Esfahbod
eed05b04eb
[GSUB] minor
2009-11-02 14:40:07 -05:00
Behdad Esfahbod
cdb317bc4e
[GSUB] Towards Context subtitutes
2009-11-02 14:40:07 -05:00
Behdad Esfahbod
c9c6a78aec
[GSUB] Minor refactoring
2009-11-02 14:40:07 -05:00
Behdad Esfahbod
bb3899a579
[GSUB] Implement ligature substitutions
2009-11-02 14:40:07 -05:00
Behdad Esfahbod
38b011a293
[GSUB] Hook new GSUB up in Pango
2009-11-02 14:40:07 -05:00
Behdad Esfahbod
a84e71ad11
[GSUB] Start Ligature subtable support
2009-11-02 14:40:07 -05:00
Behdad Esfahbod
52886ca56b
[GSUB] Implement Alternate subtables
2009-11-02 14:40:06 -05:00
Behdad Esfahbod
4f27ce7e02
[GSUB] Implement Extension subtables
2009-11-02 14:40:06 -05:00
Behdad Esfahbod
83e61ff470
[GSUB] Fix reverse lookup loop like we did in the old code before
2009-11-02 14:40:06 -05:00
Behdad Esfahbod
5a0b791184
[harfbuzz/GSUB] towards a partially working GSUB
2009-11-02 14:40:06 -05:00
Behdad Esfahbod
30bd763fa2
Implement the first substitute()
2009-11-02 14:40:06 -05:00
Behdad Esfahbod
ce48f03946
Merge harfbuzz-ng
2009-11-02 14:38:33 -05:00
Behdad Esfahbod
0e13beeb93
Use git.mk
2009-04-17 17:39:15 -04:00
Behdad Esfahbod
2d15e72c75
Give it a start at GSUB
2009-04-15 19:50:16 -04:00
Behdad Esfahbod
9d870f2a55
Bug 577952 – Error loading {GDEF,GSUB,GPOS} table 0x6EAD
...
Detect TrueType Collections by checking the font data header instead
of checking for "face->num_faces >1".
2009-04-09 13:30:26 -04:00
Behdad Esfahbod
d49caf1f77
[opentype] Protect against illegal access for arrays of length zero
2009-03-02 15:16:11 +03:30
Behdad Esfahbod
66871797af
[opentype] Use size_t instead of uint for malloc wrappers
2009-03-02 14:20:20 +03:30
Behdad Esfahbod
3664e59c52
Fix Bug 572529 – Poor -I ordering can break build
2009-03-02 11:09:29 +03:30
Behdad Esfahbod
aca4d11388
Allocate all array rows in a single ALLOC call. Saves over 100 alloc calls
...
2009-01-31 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/harfbuzz-gpos.c (Load_Mark2Array),
(Free_Mark2Array):
Allocate all array rows in a single ALLOC call. Saves over 100
alloc calls when loading DejaVu Sans,
2009-02-02 00:13:07 +00:00
Behdad Esfahbod
c561d69c72
Remove ClassDef->Defined field. This is the comment accompanying it:
...
2009-01-29 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/harfbuzz-open.h:
* pango/opentype/harfbuzz-gdef.c (Make_ClassRange),
(HB_GDEF_Build_ClassDefinition):
* pango/opentype/harfbuzz-gpos.c (Load_PosClassRule),
(Load_ChainPosClassRule):
* pango/opentype/harfbuzz-gsub.c (Load_SubClassRule),
(Load_ChainSubClassRule):
* pango/opentype/harfbuzz-open.c (Load_ClassDef1),
(Load_ClassDef2), (_HB_OPEN_Load_ClassDefinition),
(_HB_OPEN_Load_EmptyClassDefinition),
(_HB_OPEN_Free_ClassDefinition):
Remove ClassDef->Defined field. This is the comment accompanying it:
The `Defined' field is not defined in the OpenType specification
but apparently needed for processing fonts like trado.ttf: This
font refers to a class which contains not a single element. We
map such classes to class 0.
The comment is correct that trado.ttf (MS Traditional Arabic) uses
such classes. However, in my testing I couldn't identify any
problems with the font if the special handling is removed. I also
processed as many fonts as I could get my hand on and trado.ttf was
the only not-totally-broken font hitting the special-case code.
DejaVu fonts hit it too, but I'm sure they do not require the
special-handling code. Most probably, that code introduces bugs
in them.
The special-casing was consuming lots of memory. EIGHT MEGABYTES
for loading DejaVu Sans! While this could be complete fixed, I
decided to remove the special-handling code altogether. I don't
think it will make any real difference, and if it does, we'll fix
fonts. Such hacks will not be in harfbuzz-ng anyway.
Bug originally reported by nsf.
2009-01-29 09:20:08 +00:00
Behdad Esfahbod
9372edd6f0
Use calloc(), instead of malloc()ing and memset()ing.
...
2009-01-29 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/harfbuzz-impl.c (_hb_alloc): Use calloc(),
instead of malloc()ing and memset()ing.
2009-01-29 09:19:56 +00:00
Behdad Esfahbod
94c21d26ba
Remove old cruft.
...
2009-01-29 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/harfbuzz-dump-main.c (main): Remove old cruft.
2009-01-29 09:19:43 +00:00
Behdad Esfahbod
0a47c4f78e
Allocate all array rows in a single ALLOC call. Saves over 2000 alloc
...
2009-01-29 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/harfbuzz-gpos.c (Load_BaseArray), (Free_BaseArray):
Allocate all array rows in a single ALLOC call. Saves over 2000
alloc calls when loading DejaVu Sans!
2009-01-29 09:19:20 +00:00
Behdad Esfahbod
549be924bc
Bug 469049 – Fix all compiler warnings
...
2008-12-25 Behdad Esfahbod <behdad@gnome.org>
Bug 469049 – Fix all compiler warnings
* pango-view/viewer-pangocairo.c (render_callback):
* pango/fonts.c (append_field), (pango_font_description_to_string):
* pango/opentype/harfbuzz-dump.c:
* pango/pango-bidi-type.c (pango_log2vis_get_embedding_levels):
* pango/pango-coverage.c (pango_coverage_set):
* pango/pango-markup.c (span_parse_func):
* pango/pango-renderer.c
(pango_renderer_default_draw_error_underline):
* pango/pango-utils.c (pango_scan_string):
* pango/pangocairo-render.c (pango_cairo_renderer_draw_trapezoid),
(draw_error_underline), (pango_cairo_renderer_class_init):
Fix all the remaining warnings.
2008-12-26 02:31:47 +00:00
Behdad Esfahbod
719f9eaa75
Fix more warnings.
...
2008-12-25 Behdad Esfahbod <behdad@gnome.org>
* pango/modules.c (pango_module_load), (script_info_free):
* pango/opentype/harfbuzz-gpos.c (HB_Load_GPOS_Table):
* pango/pango-bidi-type.c:
* pango/pango-coverage.c (pango_coverage_ref),
(pango_coverage_unref):
* pango/pango-engine.c (pango_engine_shape_real_covers),
(fallback_engine_shape), (fallback_engine_covers):
* pango/pango-fontmap.c (pango_font_map_init):
* pango/pango-ot-ruleset.c (pango_ot_ruleset_finalize),
(pango_ot_ruleset_new):
* pango/pangofc-decoder.c (pango_fc_decoder_init),
(pango_fc_decoder_class_init):
* pango/pangofc-font.c (pango_fc_font_find_shaper),
(pango_fc_font_get_coverage):
* pango/pangofc-fontmap.c (pango_fc_font_map_list_families),
(pango_fc_make_pattern), (pango_fc_font_map_get_patterns),
(get_first_font), (_pango_fc_font_map_get_coverage),
(cleanup_font), (pango_fc_font_description_from_pattern),
(pango_fc_face_list_sizes), (pango_fc_family_list_faces):
* pango/pangoft2-fontmap.c (pango_ft2_font_map_get_resolution):
* pango/pangoft2-render.c (pango_ft2_renderer_init),
(pango_ft2_renderer_draw_trapezoid):
* pango/pangoft2.c (pango_ft2_font_get_face),
(pango_ft2_font_real_unlock_face),
(pango_ft2_free_glyph_info_callback):
Fix more warnings.
2008-12-26 02:31:35 +00:00
Behdad Esfahbod
21f7d507f4
Bug 528272 – "Error loading GPOS table 5503" when using katakana
...
2008-10-14 Behdad Esfahbod <behdad@gnome.org>
Bug 528272 – "Error loading GPOS table 5503" when using katakana
characters
* pango/opentype/harfbuzz-gpos.c (Load_Mark2Array): Skip parsing
null anchor tables.
2008-10-15 03:45:29 +00:00
Behdad Esfahbod
a26c6ae705
Fix left-to-right positioning. Reported by Peter Hunter.
...
2008-09-29 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/harfbuzz-gpos.c (Position_CursiveChain):
Fix left-to-right positioning. Reported by Peter Hunter.
2008-09-29 22:28:47 +00:00
Behdad Esfahbod
b6c06c56a3
Bug 540592 – Crash in HB_GSUB_Apply_String with Linux-Libertine font
...
2008-06-29 Behdad Esfahbod <behdad@gnome.org>
Bug 540592 – Crash in HB_GSUB_Apply_String with Linux-Libertine font
* pango/opentype/harfbuzz-gsub.c (GSUB_Do_String_Lookup): Fix reverse
loops for type 8 lookups.
2008-06-29 18:30:14 +00:00
Behdad Esfahbod
c44733596c
[hb-ot-layout] Add proper namespace to accessors
2008-02-18 21:33:22 -05:00