Behdad Esfahbod
d5338ba189
[ft] Add locking FT_Face API
...
Now that we mutex our internal FT_Face, share it with clients.
New API:
- hb_ft_font_lock_face()
- hb_ft_font_unlock_face()
2019-11-22 16:22:27 -05:00
Behdad Esfahbod
d6ad613159
[docs] Misc fixes
2019-09-30 10:40:25 -07:00
Behdad Esfahbod
e56d4ff43b
Rename hb_ot_meta_get_entries() to +hb_ot_meta_get_entry_tags()
2019-08-13 21:02:47 -07:00
Ebrahim Byagowi
9f2b4956b4
[base] Add hb_ot_layout_get_baseline API
2019-07-30 04:42:51 +04:30
Ebrahim Byagowi
40a4b6ddbd
[var] Add a new API, hb_font_set_var_named_instance
2019-07-29 16:23:47 -07:00
Ebrahim Byagowi
62932c14bd
[meta] Rename ot-metadata to ot-meta per review
2019-07-25 17:49:51 -07:00
Ebrahim Byagowi
3ac03bd67c
[meta] New API, hb_ot_metadata_reference_entry for fetching meta entries
2019-07-25 17:49:51 -07:00
Ebrahim Byagowi
eb8bd2f7ec
Add hb_gdi_face_create API
...
Based on Konstantin Ritt work posted on mailing list
2019-07-21 14:22:19 -07:00
Behdad Esfahbod
e540d402f6
[docs] Minor
2019-07-20 12:09:34 -07:00
Ebrahim Byagowi
87e628436e
Implement a simple API for fetching opentype metrics
...
Fixes https://github.com/harfbuzz/harfbuzz/pull/1432
2019-07-18 14:15:58 -07:00
Behdad Esfahbod
0819f3ca86
Deprecate v_kerning callback again
...
Part of https://github.com/harfbuzz/harfbuzz/issues/1682
2019-06-17 14:02:47 -07:00
Behdad Esfahbod
2682efb02d
Revert "Deprecate font kern API"
...
This reverts commit d219f899f4
.
API change: Un-deprecate font kern API.
Part of https://github.com/harfbuzz/harfbuzz/issues/1682
We should document that this API is only necessary to hook up
non-OpenType kerning. hb-ot-font will continue to NOT implement them.
2019-06-17 13:38:49 -07:00
Ebrahim Byagowi
b292772e6e
[dwrite] A new API, hb_directwrite_face_get_font_face ( #1600 )
...
Can be useful when using HarfBuzz for font loading and shaping
but using DirectWrite for rendering.
2019-03-29 13:00:56 -07:00
Khaled Hosny
a17ed8459e
[doc] Move hb_variation_t to hb-common section
2019-02-19 15:18:48 -05:00
Khaled Hosny
9caabc9cf8
[doc] Move feature_t and its function to hb-common
...
It is rather confusing to have script, language etc, in hb-common section
while feature is in hb-shape section. I keep looking for it in hb-common
section then using the API index because I can’t find it there.
2019-02-19 14:09:52 -05:00
Ebrahim Byagowi
01f628cf55
[aat] Expose hb_aat_layout_has_tracking API
2018-12-03 22:27:26 +03:30
Behdad Esfahbod
d19b1680b5
[aat] Expose a couple APIs
...
New API:
+hb_aat_layout_has_substitution()
+hb_aat_layout_has_positioning()
2018-12-03 10:41:37 -05:00
Behdad Esfahbod
926f512f35
[aat.feat] Rework API and implementation
...
Fixes https://github.com/harfbuzz/harfbuzz/pull/1346
2018-11-25 01:16:02 -05:00
Behdad Esfahbod
e20f81f4fa
[aat] Rename feat API a bit more
2018-11-25 01:16:02 -05:00
Ebrahim Byagowi
54f4c17f0a
[feat] Rename API uses of setting to selector
2018-11-25 01:16:02 -05:00
Ebrahim Byagowi
9c64b216ec
[feat] Apply renamings and add documentation
2018-11-25 01:16:02 -05:00
Behdad Esfahbod
f48bb9a393
[var] Deprecated axis enumeration API and add new version
...
New version has axis flags.
New API:
+hb_ot_var_axis_info_t
+hb_ot_var_find_axis_info()
+hb_ot_var_get_axis_infos()
Deprecated API:
-HB_OT_VAR_NO_AXIS_INDEX
-hb_ot_var_axis_t
-hb_ot_var_find_axis()
-hb_ot_var_get_axes()
2018-11-20 20:46:14 -05:00
Behdad Esfahbod
587d49fc65
[fvar] Add named-instance API
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/1241
2018-11-19 14:51:34 -05:00
Behdad Esfahbod
1a2eb108b8
[ot-var] Add hb_ot_var_axis_get_flags()
...
Part of https://github.com/harfbuzz/harfbuzz/issues/1241
New API:
+hb_ot_var_axis_flags_t
+hb_ot_var_axis_get_flags
2018-11-19 12:36:56 -05:00
Behdad Esfahbod
a7aba99baa
[name] Rename hb_name_id_t to hb_ot_name_id_t
...
https://github.com/harfbuzz/harfbuzz/pull/1254
2018-10-30 14:04:09 -07:00
Ebrahim Byagowi
3d4c1f6a41
[ot-color] Apply Behdad reviews
2018-10-28 18:33:10 -07:00
Ebrahim Byagowi
dbd419bede
[ot-color] Add public API for CBDT/sbix/SVG color Emojis
2018-10-28 18:33:10 -07:00
Behdad Esfahbod
6ce49a921a
[name] Change hb_name_id_t back to unsigned int
...
d941f66c75 (commitcomment-31076011)
2018-10-28 08:26:30 -07:00
Behdad Esfahbod
46072b7cb5
[ot] Fold hb-ot-tag.h into hb-ot-layout.h
2018-10-27 04:47:41 -07:00
Behdad Esfahbod
00cf4e5eb6
[docs] Fill in some sections
2018-10-27 04:47:41 -07:00
Behdad Esfahbod
d941f66c75
[name] Make hb_name_id_t be the enum
...
This is like hb_script_t.
We had this exposed as unsigned int since 2.0.0 release in two APIs,
as well as hb_ot_layout_get_size_params() from earlier.
But since no one uses those (right?!), let's just fix this now.
2018-10-27 03:06:14 -07:00
Behdad Esfahbod
3b7e5f1313
[name] Rename hb_ot_name_get_names() to hb_ot_name_list_names()
...
And swap return value positions, so can be annotated for gobject-introspectin.
2018-10-27 03:06:14 -07:00
Behdad Esfahbod
e7400c0275
[docs] Hook up new symbols
2018-10-26 22:24:40 -07:00
Ebrahim Byagowi
eceeb85666
[docs] Add hb-ot-color section
2018-10-26 00:23:45 +03:30
Ebrahim Byagowi
dc49bd8d81
Add two APIs for getting stylistic set labels
...
* hb_ot_layout_feature_get_characters
* hb_ot_layout_feature_get_name_ids
However HarfBuzz currently doesn't expose an API for retrieving the actual
information associated with NameId from the `name` table and that should be
done separately.
2018-10-12 16:06:39 -04:00
David Corbett
7f1fbfe2e3
Add hb_ot_tags_to_script_and_language
2018-10-11 13:54:28 -04:00
David Corbett
2c7d4db7af
Deprecate obsolete functions
...
`hb_ot_tags` replaces `hb_ot_tags_from_script` and
`hb_ot_tag_from_language`.
`hb_ot_layout_table_select_script` replaces
`hb_ot_layout_table_choose_script`.
`hb_ot_layout_script_select_language` replaces
`hb_ot_layout_script_find_language`.
2018-10-11 13:54:28 -04:00
David Corbett
91067716f5
Refactor the selection of script and language tags
...
The old hb-ot-tag.cc functions, `hb_ot_tags_from_script` and
`hb_ot_tag_from_language`, are now wrappers around a new function:
`hb_ot_tags`. It converts a script and a language to arrays of script
tags and language tags. This will make it easier to add new script tags
to scripts, like 'dev3'. It also allows for language fallback chains;
nothing produces more than one language yet though.
Where the old functions return the default tags 'DFLT' and 'dflt',
`hb_ot_tags` returns an empty array. The caller is responsible for
using the default tag in that case.
The new function also adds a new private use subtag syntax for script
overrides: "x-hbscabcd" requests a script tag of 'abcd'.
The old hb-ot-layout.cc functions,`hb_ot_layout_table_choose_script` and
`hb_ot_layout_script_find_language` are now wrappers around the new
functions `hb_ot_layout_table_select_script` and
`hb_ot_layout_script_select_language`. They are essentially the same as
the old ones plus a tag count parameter.
Closes #495 .
2018-10-11 13:54:28 -04:00
Behdad Esfahbod
b314c4e9ab
[font] Add get_nominal_glyphs() callback (note the plural)
...
Unused as of now. To be wired up to normalizer, which would remove
overhead and allow hb-ot-font initialization to become a no-op, so
we can enable it by default.
2018-10-09 09:43:44 -04:00
Behdad Esfahbod
d219f899f4
Deprecate font kern API
2018-10-09 00:01:09 -04:00
Behdad Esfahbod
26d7305da7
Deprecate decompose_compatibility stuff
2018-10-08 22:31:35 -04:00
Behdad Esfahbod
42b51eee54
Deprecate eastasian_width stuff
2018-10-08 22:26:39 -04:00
Behdad Esfahbod
e42cd58c99
Rename invisible_codepoint to invisible_glyph in API
...
Deleted recently added API:
hb_buffer_set_invisible_codepoint()
hb_buffer_get_invisible_codepoint()
hb-shape / hb-view --invisible-codepoint
New API:
hb_buffer_set_invisible_glyph()
hb_buffer_get_invisible_glyph()
hb-shape / hb-view --invisible-glyph
Fixes https://github.com/harfbuzz/harfbuzz/issues/1216
2018-10-07 20:47:30 -04:00
Behdad Esfahbod
71b65eb27d
Add API for setting invisible-codepoint
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/1216
New API:
hb_buffer_set_invisible_codepoint()
hb_buffer_get_invisible_codepoint()
hb-shape / hb-view --invisible-codepoint
2018-10-07 18:43:26 +02:00
Behdad Esfahbod
becd84aa2f
Add HB_FEATURE_GLOBAL_START/END
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/1141
New API:
HB_FEATURE_GLOBAL_START
HB_FEATURE_GLOBAL_END
2018-09-11 01:27:25 +02:00
Behdad Esfahbod
dae39c58fb
[face] Introduce character-map API
...
New API:
+hb_face_collect_unicodes
+hb_face_collect_variation_selectors
+hb_face_collect_variation_unicodes
2018-08-25 22:44:39 -07:00
Behdad Esfahbod
82b12bcadd
[unicode] Add HB_UNICODE_MAX
...
New API:
HB_UNICODE_MAX
2018-08-25 22:07:17 -07:00
Behdad Esfahbod
aadb2a9188
Add face-builder
...
New API:
+hb_face_builder_create
+hb_face_builder_add_table
2018-08-25 08:18:53 -07:00
Behdad Esfahbod
b0ff79acd8
Add +hb_font_get_glyph_advances_for_direction
...
New API:
+hb_font_get_glyph_advances_for_direction
2018-08-07 09:52:06 -07:00
Behdad Esfahbod
79e21984b1
Add batch advance width callback function
...
New API:
+hb_font_funcs_set_glyph_h_advances_func
+hb_font_funcs_set_glyph_v_advances_func
+hb_font_get_glyph_h_advances
+hb_font_get_glyph_h_advances_func_t
+hb_font_get_glyph_v_advances
+hb_font_get_glyph_v_advances_func_t
2018-08-06 09:45:17 -07:00