|
22a21e81
|
2025-02-04T22:21:52
|
|
[aat] Fix a crash
|
|
275fb565
|
2025-02-04T22:07:48
|
|
[morx] Clean up memory
|
|
a6173280
|
2025-02-04T22:00:14
|
|
[bit-set] Sprinkle a few .arrayZ around
All accesses are valid.
|
|
7862c7c5
|
2025-02-04T21:37:27
|
|
Rename a method again
|
|
255dadc1
|
2025-02-04T22:02:11
|
|
[set] Speed up may_intersect()
|
|
474bef1c
|
2025-02-04T19:17:13
|
|
[aat] Use exact set for buffer intersection versus subchains
|
|
95eefa38
|
2025-02-04T19:16:57
|
|
[set] Add a brute-force intersects(other_set)
|
|
80bbb0b2
|
2025-02-04T18:42:33
|
|
[set-digest] Rename a method
|
|
7d17ea49
|
2025-02-04T18:43:33
|
|
Merge pull request #5037 from harfbuzz/face-blob
[face] Add fallback implementation to hb_face_reference_blob
|
|
a315d43b
|
2025-02-04T20:41:01
|
|
[doc] Update hb_face_reference_blob() and hb_reference_table_func_t
|
|
722ab548
|
2025-02-04T17:59:39
|
|
[kerx] Don't compute buffer digest
We don't use it in kerx
|
|
449c7f2a
|
2025-02-04T17:56:22
|
|
[aat] Add some tracing
|
|
3a1d7ee7
|
2025-02-04T17:33:42
|
|
[aat] Remove the buffer-digest threshold
This can help us skip entire subchains, eg. when they are for
different scripts.
Speeds up LucidaGrande with ASCII text by 20%.
|
|
e1cb3b15
|
2025-02-04T17:28:29
|
|
Revert "[aat] Remove set-digest"
This reverts commit 832f199607292a41b4621b87a646c30cddc00124.
|
|
359d163d
|
2025-02-04T17:11:46
|
|
Revert "[aat] Remove buffer-digest stuff"
This reverts commit 7642366593826c0e04ad58df83fa63ec53960486.
|
|
7d23e642
|
2025-02-04T17:11:13
|
|
Revert "[aat] Remove dead code"
This reverts commit bf36f5c3a4ff0003d330e2c2fc410c0cde911cba.
|
|
d1099476
|
2025-02-04T17:12:23
|
|
Revert "[aat] Remove unused macro"
This reverts commit 2ddcccd26ea4962a97ba6858952a5a71d032e6c1.
|
|
2ddcccd2
|
2025-02-04T17:05:45
|
|
[aat] Remove unused macro
|
|
1ff46235
|
2025-02-04T16:46:25
|
|
[morx] Micro-optimize
|
|
4825e5e2
|
2025-02-04T00:54:58
|
|
[face] Add fallback implementation to hb_face_reference_blob
If referencing the face blob is not possible (e.g. not implemented by
the font functions), use face builder to create a blob out of
individual table blobs.
Fixes https://github.com/harfbuzz/harfbuzz/issues/5036
|
|
9cf2ea3e
|
2025-02-04T13:34:31
|
|
Merge branch 'kern-set'
|
|
bf36f5c3
|
2025-02-04T13:32:31
|
|
[aat] Remove dead code
|
|
76423665
|
2025-02-04T13:19:43
|
|
[aat] Remove buffer-digest stuff
With both morx & kerx sped up now using cache / set, this is not
beneficial anymore. Remove it.
|
|
9a4601b0
|
2025-02-04T13:14:04
|
|
[kern/kerx] Use hb-set-t for left/right, to guard bsearch
Use a set of all left glyphs participating in kerning, and all
right glyphs participating in kerning, and use these two to weed
out non-kerning pairs before bsearching into the kerns.
Speeds up shaping of HelveticaNeue by ~10%.
|
|
3e50a8df
|
2025-02-04T13:05:34
|
|
[buffer] Use UINT_MAX instead of wrong macro
|
|
ee4ca63b
|
2025-02-03T13:23:08
|
|
[aat] Micro-optimize
|
|
ed37725e
|
2025-02-03T12:59:58
|
|
[aat] Micro-optimize get_class
|
|
91572945
|
2025-02-02T18:25:45
|
|
[aat] More delambda
Again, this was costly.
|
|
556eb029
|
2025-02-02T18:19:32
|
|
[aat] Remove a lambda
This lambda was added to "simplify" the logic. But has a lot of overhead.
|
|
d9a25bc4
|
2025-02-02T17:37:43
|
|
[aat] Allocate caches together
No separate malloc.
|
|
7b44a94a
|
2025-02-02T17:33:46
|
|
[aat] Shrink cache to 256 bytes per subtable
|
|
b89ab7d0
|
2025-02-02T17:08:20
|
|
[aat] Shrink the class cache to be 512 bytes instead of 1kb
|
|
4fb0ac77
|
2025-02-02T17:06:45
|
|
[aat] Minor simplify
|
|
832f1996
|
2025-02-02T17:04:06
|
|
[aat] Remove set-digest
Now that we have a class cache, this was just speeding things down.
|
|
0e13e781
|
2025-02-02T16:50:04
|
|
[aat] Add a class-cache to the machine
Speeds up Times.ttc benchmark by 20%.
|
|
13844848
|
2025-02-02T11:56:01
|
|
[aat] Typo
|
|
f5e50890
|
2025-02-02T11:40:27
|
|
[open-type] Another tweak to cmp()
Again, unlikely that compiler cares.
|
|
c68df817
|
2025-02-02T11:33:42
|
|
[open-type] Minor tweak to cmp()
Remove codepath that was never taken.
|
|
66bb94fe
|
2025-02-02T08:40:30
|
|
[set-digest] Tune back to starting with 4
Make Amiri slightly slower again, but works better for AAT fonts
I tested.
|
|
9fd855ed
|
2025-02-02T07:55:53
|
|
[set-digest] Tune a bit more
Saves another 2% on Amiri benchmark.
|
|
880b92ed
|
2025-02-02T07:43:33
|
|
[set-digest] Fix build on Linux
|
|
92f13bbd
|
2025-02-01T19:11:20
|
|
[set-digest] Inline combiner
Instead of defining one digest and then combining three of them at
different shifts, inline the code The compiler can optimize it better.
3% speedup with Amiri benchmark.
|
|
c4c8eb4f
|
2025-01-26T16:25:55
|
|
[algs] Rename a macro
Clashes with Apple simd/simd.h
|
|
9ba286de
|
2025-02-01T14:23:47
|
|
[ot-shape] Micro-optimize ::equal
For two integers, it's faster to compare them directly.
|
|
6be66b0e
|
2025-01-24T16:26:54
|
|
[ft/coretext] Fail setting font-funcs gracefully
Fixes https://github.com/harfbuzz/harfbuzz/issues/5020
|
|
4df11621
|
2025-01-24T05:00:05
|
|
[VARC] Fix variable binding
Ouch.
|
|
2fa9ccee
|
2025-01-23T23:13:49
|
|
[VARC] Simplify
|
|
2d2418eb
|
2025-01-23T23:13:11
|
|
[VARC] Avoid float div-by-zero
|
|
fe9398e9
|
2025-01-23T22:59:12
|
|
[VARC] Chain transforms
Previous code was actually wrong even, for non-uniform x/y font scale.
Fixes https://github.com/harfbuzz/harfbuzz/issues/5017
|
|
22fbc756
|
2025-01-22T11:08:28
|
|
[ot-tags] Update IANA and OT language registries
|
|
a888761a
|
2025-01-21T15:56:26
|
|
[hb-ft] Hopefully clarify hb_ft_font_create() life cycle even more
Add “only” to one more place.
|
|
3a7ebc32
|
2025-01-13T14:53:16
|
|
[config] Fix build with HB_LEAN
Fixes https://github.com/harfbuzz/harfbuzz/issues/4997
|
|
1e629c35
|
2025-01-12T23:06:23
|
|
[morx] Blocklist dysfunctional morx table of AALMAGHRIBI.ttf font
Fixes #4108
|
|
7b27c8ed
|
2025-01-11T18:13:18
|
|
10.2.0
|
|
021b4438
|
2025-01-10T13:57:16
|
|
Garay script is RTL
Fixes https://github.com/harfbuzz/harfbuzz/issues/4996
|
|
fc42cdd6
|
2025-01-08T22:17:03
|
|
[docs] Reduce warnings
|
|
1ce81912
|
2025-01-08T15:25:46
|
|
[subset-serialize] Formatting
|
|
e943a009
|
2025-01-08T15:22:47
|
|
[subset-serialize] Try to fix MSVC build
|
|
9d5beeaf
|
2025-01-08T01:07:09
|
|
[subset-serialize] Fix doc generation
gtk-doc is rather sensitive to white space, and it does not seem to be
able to parse bare `unsigned` without `int`.
|
|
bdb50f1c
|
2025-01-07T20:32:05
|
|
[repacker] Also rename api method from hb_subset_repack_or_fail -> hb_subset_serialize_or_fail.
|
|
05650416
|
2025-01-07T19:56:25
|
|
[repacker] rename hb-subset-repacker -> hb-subset-serialize.
Also hb_link_t and hb_object_t to hb_subset_serialize_link_t and hb_subset_serialize_object_t.
|
|
503553c3
|
2025-01-07T11:50:12
|
|
[docs] Fix build for real this time
|
|
fca062eb
|
2025-01-07T11:38:25
|
|
[docs] Fix build fail
|
|
379e3c98
|
2025-01-07T11:29:35
|
|
[shape] Wrap justify API in EXPERIMENTAL
Fixes https://github.com/harfbuzz/harfbuzz/issues/4984
|
|
5a6f5922
|
2025-01-06T21:16:24
|
|
[repacker] Promote repacking API to stable.
For #227.
|
|
57569baa
|
2025-01-02T21:14:25
|
|
Don’t insert U+25CC before super/subscript digits
|
|
3258b1f2
|
2024-12-20T10:58:14
|
|
[coretext]: fix tvOS build
define kCTFont* when unavailable, i.e. ios < 6.0, macOS < 10.8 or tvOS < 9.0.
MAC_OS_X_VERSION_MIN_REQUIRED is always defined in AvailabilityMacros.h for all targets,
while __ENVIRONMENT_*_VERSION_MIN_REQUIRED__ is defined by compiler when building a specific target
|
|
524e0f0a
|
2024-12-19T11:53:37
|
|
[doc] Improve hb_face_reference_table() docs
|
|
f887096a
|
2024-12-15T10:53:09
|
|
[myanmar] Allow all tones (& visarga) in any order
|
|
c8050b38
|
2024-12-10T11:22:15
|
|
[coretext] Fix build on old Mac
Fixes https://github.com/harfbuzz/harfbuzz/issues/4968
|
|
40ef6c05
|
2024-12-05T16:03:28
|
|
[ot-tags] Update OpenType language system registry
|
|
1c249be9
|
2024-12-02T15:51:19
|
|
Sidestep nontrivial-memaccess warning in Crap()
With -Wnontrivial-memaccess, recent versions of clang flag the usage of
memcpy in hb-null.hh with pointers to nontrivially-copyable types.
Sidestep this warning by casting the problematic pointer to void*.
|
|
10cf348a
|
2024-11-11T10:32:01
|
|
[gsubgpos] Guard integer arithmetic against wrapping below zero
When either casting a signed integer to an unsigned one or subtracting
a value from an unsigned one, add assertions to verify we will not end
up below expected bounds.
|
|
780aaca8
|
2024-11-27T16:12:51
|
|
set harfbuzz version in cmake config file
|
|
3bb89eeb
|
2024-11-24T17:00:14
|
|
[instancer] use hb_parse_double() for parsing axis positions
Added hb_subset_axis_range_from/to_string()
|
|
056cc560
|
2024-11-24T07:33:12
|
|
[config] Improve language handling with HB_LEAN
Remove HB_NO_LANGUAGE_LONG and HB_NO_LANGUAGE_PRIVATE_SUBTAG defines to
support language tags longer than 2 letters and private language tags
(needed to set language using OpenType language tags) respectively.
HB_LEAN is used when smaller binary size is desired, but in general it
should not produce different shaping output.
Fixes https://github.com/harfbuzz/harfbuzzjs/issues/108
|
|
0b7beefd
|
2024-11-22T01:00:57
|
|
Raise table growth limit during subsetting. Real case encountered that exceeded the current limit. Fixes #4943.
|
|
773fe850
|
2024-11-20T17:20:49
|
|
[layout] Blocklist the GDEF table of various Courier New versions
These files have incorrectly give several base glyphs GDEF mark glyph
class leading in zeroing there advance widths.
Fixes https://github.com/harfbuzz/harfbuzz/issues/4936
|
|
39246326
|
2024-11-16T12:20:24
|
|
[cairo] Protect against some invalid matrices
hb-view --font-size 0,10 still fails with cairo error.
To be debugged separately.
|
|
d759ee5a
|
2024-11-15T16:18:34
|
|
[ft] Guard FT_LOAD_NO_SVG
Also pass FT_LOAD_NO_BITMAP.
|
|
96579076
|
2024-11-15T15:33:11
|
|
[ft-colr] Don't load SVG table since we don't support it
Part of https://github.com/harfbuzz/harfbuzz/issues/4938
|
|
21cba9e5
|
2024-11-15T15:21:03
|
|
[cairo] Fix scaling in paint_color_glyph
Fixes https://github.com/harfbuzz/harfbuzz/issues/4938
|
|
de7f97b7
|
2024-11-15T15:14:37
|
|
[COLR] Add comment
|
|
b0d52abe
|
2024-10-23T20:49:44
|
|
[subset] consider variation selectors subsetting cmap14
cmap14 subsetting code was not considering variation selectors in the input unicode set when deciding which variant glyphs to keep. This updates subsetting to only keeps variant glyphs if their variation selector code point is in the input unicodes set.
For https://github.com/harfbuzz/harfbuzz/issues/4911
|
|
1767f99e
|
2024-11-10T22:43:28
|
|
[cairo] Guard hb_cairo_glyphs_from_buffer() against bad UTF-8
Previously it was assuming valid UTF-8.
|
|
b5ed7846
|
2024-11-08T14:46:57
|
|
[subset-serialize] release discarded objects
|
|
622e9c33
|
2024-11-06T10:59:17
|
|
[instancer] fix for incorrect offset calculation when we have gvar padding
|
|
9ef44a2d
|
2024-11-05T08:01:56
|
|
10.1.0
|
|
c85a6c2a
|
2024-11-04T17:33:30
|
|
[cairo] Respect HB_NO_VAR
Fixes https://github.com/harfbuzz/harfbuzz/issues/4924
|
|
9974a661
|
2024-10-27T16:14:53
|
|
[icu] Make it build with ICU 76
Fixes https://github.com/harfbuzz/harfbuzz/issues/4915
|
|
e5139c51
|
2024-10-21T12:54:56
|
|
bug fix in hashmap get_with_hash()
|
|
de1a1e27
|
2024-10-15T14:17:38
|
|
[coretext-font] Implement get_glyph_v_origin()
For a font without vertical metrics, I'm getting different
values from ot/ft. But that's expected, since in ot we just
implemented the same heuristics as ft.
|
|
78609702
|
2024-10-15T14:12:07
|
|
[coretext-font] Implement get_glyph_v_advances
|
|
e1026a22
|
2024-10-15T14:05:39
|
|
[coretext-font] Implement get_variation_glyph()
Not sure if I got it right, but *seems* to work.
|
|
d44cc8a1
|
2024-10-15T13:54:16
|
|
[coretext-font] Implement get_glyph_name()
|
|
0ce67f56
|
2024-10-15T13:49:01
|
|
[coretext-font] Implement font_get_h_metrics
|
|
e31ea830
|
2024-10-14T16:00:06
|
|
[ft] Try using a ref-counted ft_library
https://github.com/harfbuzz/harfbuzz/pull/4895#issuecomment-2412348792
|
|
12fc715d
|
2024-10-12T20:14:59
|
|
[ft] Add hb_ft_face_create_from_file_or_fail()
New API:
+hb_ft_face_create_from_file_or_fail()
|
|
89c83b5b
|
2024-10-12T19:45:12
|
|
[coretext] Add hb_coretext_face_create_from_file_or_fail()
New API hb_coretext_face_create_from_file_or_fail()
|
|
b12acba4
|
2024-10-12T19:29:02
|
|
[face] Add hb_face_create_from_file_or_fail()
New API:
+ hb_face_create_from_file_or_fail()
|