src/hb-ot-layout.h


Log

Author Commit Date CI Message
Behdad Esfahbod dc35a0fb 2023-07-30T16:32:11 [ot-map] Speed up feature finding New API: - hb_ot_layout_collect_feature_map()
Behdad Esfahbod 0894813a 2023-05-19T11:30:03 [layout] Add "2" version of BASE table API ...that do the script/language resolution. Part of https://github.com/harfbuzz/harfbuzz/pull/4237 Ref https://github.com/harfbuzz/harfbuzz/issues/3439
Behdad Esfahbod 3e110c69 2023-05-19T11:06:26 [layout] Add hb_ot_layout_get_font_extents() Untested. Fixes https://github.com/harfbuzz/harfbuzz/issues/3290
Behdad Esfahbod edec8946 2023-01-20T09:28:59 New API: hb_ot_layout_script_select_language2() Variant that outputs chosen_language. Not sure why the original API didn't have this. The script counterpart has.
Behdad Esfahbod 71c6cba0 2022-09-01T13:43:19 [layout] Rename API: -hb_ot_layout_get_optical_bound() +hb_ot_layout_lookup_get_optical_bound()
Behdad Esfahbod 5d6f1a88 2022-08-31T08:31:24 [layout] Add hb_ot_layout_get_optical_bound()
Khaled Hosny 8d1b000a 2022-03-01T21:27:32 4.0.0
Behdad Esfahbod f8e9e315 2022-02-17T14:34:46 Merge pull request #3437 from matthiasclasen/synthesize-missing-baselines [BASE] Synthesize missing baselines
Matthias Clasen 95bb2ff7 2022-02-16T13:10:52 [ot-layout] Add central baselines Add HB_OT_LAYOUT_BASELINE_TAG_IDEO_EMBOX_CENTRAL and HB_OT_LAYOUT_BASELINE_TAG_IDEO_FACE_CENTRAL which are the centers of the ideographic em-box and face box.
Matthias Clasen f81578fd 2022-02-13T19:15:36 [ot-layout] Synthesize missing baselines Add a variation of hb_ot_layout_get_baseline that synthesizes missing baselines, using heuristics in part taken from the CSS Inline Layout Module, Level 3. Includes some new tests for synthesized baselines. The base2.ttf is a subset of Noto Sans Bengali that includes just the Bengali Ka. New API: hb_ot_layout_get_baseline_with_fallback
Behdad Esfahbod 5de67c89 2022-02-16T17:07:17 [ot-layout] Remove commented-out prototypes Not gonna happen.
Behdad Esfahbod 98079109 2022-02-13T18:15:32 [ot-layout] Add +hb_ot_layout_get_horizontal_baseline_tag_for_script() New API: +hb_ot_layout_get_horizontal_baseline_tag_for_script()
Khaled Hosny 7b9e23f2 2021-02-10T23:37:43 [introspection] Fix g-ir-scanner syntax errors Fixes https://github.com/harfbuzz/harfbuzz/issues/2851
Khaled Hosny 3ba1e7e7 2020-12-31T17:11:35 [docs] Document HB_OT_TAG_DEFAULT_LANGUAGE/SCRIPT
Khaled Hosny 8e8c3e58 2020-12-30T23:37:49 [docs] Complete hb-ot-layout docs a bit
Khaled Hosny a3fe43a4 2020-12-30T21:58:43 [docs] Hide private enum values "/*< skip >*/" does not seem to hide them.
Behdad Esfahbod e13aaaaa 2020-06-18T15:22:54 Move API to right place in header
Behdad Esfahbod 26514ad7 2020-06-18T15:22:07 Fix API comment
Ebrahim Byagowi 1bac8582 2020-06-18T22:56:07 [layout] Rename _get_alternates to _get_glyph_alternates
Ebrahim Byagowi 1348a2c8 2020-06-16T21:05:16 [layout] hb_ot_layout_lookup_get_alternates, a new API An API to retrieve one-to-one alternates from a given GSUB lookup index.
Qunxin Liu 973c47f6 2020-06-11T11:27:57 [subset] Move 2 experimental public api methods to be private methods in GSUB/GPOS. 2 methods are: hb_ot_layout_closure_lookups and hb_ot_layout_closure_features
Qunxin Liu d7c012a0 2020-02-26T13:11:42 [subset] GDEF Variation Store: step 2 do subset based on variation indices collected in step 1
Qunxin Liu 8200e48f 2020-02-26T13:11:42 [subset] GDEF Variation Store: step 1 closure device variation indexes, create old->new variation idx mapping and store them in subset-plan
Ebrahim Byagowi 29c90322 2020-04-17T22:11:40 Move hb_ot_layout_closure_{features,lookups} behind EXPERIMENTAL flag
Evgeniy Reizner b4377afd 2020-01-31T15:11:45 Minor hb_ot_layout documentation fixes.
Qunxin Liu 8ffc9add 2019-10-31T15:59:02 [subset] layout closure_features and store them in subset-plan
Qunxin Liu 0b39c480 2019-10-22T16:00:43 [subset] closure lookups for GSUB/GPOS
Ebrahim Byagowi a0b4ac4d 2019-08-24T17:57:14 Turn 8 spaces to tab across the project According to the current code style of the project
Behdad Esfahbod 6461143b 2019-08-13T22:20:54 2.6.0
Ebrahim Byagowi 4d1872b8 2019-08-03T14:06:46 [base] Add documentation for baseline tags from ot spec
Ebrahim Byagowi 9f2b4956 2019-07-30T04:42:51 [base] Add hb_ot_layout_get_baseline API
Behdad Esfahbod 81b79dfc 2019-05-11T00:53:52 [config] Add HB_NO_COLOR to HB_LEAN Part of https://github.com/harfbuzz/harfbuzz/issues/1652
Nathan Willis 930f6fc3 2019-03-16T15:10:21 [Docs] Add inlind gtk-doc comments for hb-ot-layout functions.
Nathan Willis 3449031f 2019-03-16T15:38:08 [Docs] Add inline gtk-doc documentation of GDEF glyph classes.
Ebrahim Byagowi b8a78ce2 2018-11-03T22:28:30 [BASE] Improvements (#1347)
Behdad Esfahbod a7aba99b 2018-10-30T14:04:09 [name] Rename hb_name_id_t to hb_ot_name_id_t https://github.com/harfbuzz/harfbuzz/pull/1254
Behdad Esfahbod 46072b7c 2018-10-27T04:21:20 [ot] Fold hb-ot-tag.h into hb-ot-layout.h
Ebrahim Byagowi 63109432 2018-10-13T14:00:05 Cosmetic and minor changes
Behdad Esfahbod c0a6814b 2018-10-12T16:05:56 Touch up new API New API: +hb_ot_layout_feature_get_name_ids() +hb_ot_layout_feature_get_characters()
Behdad Esfahbod 477bc9aa 2018-10-12T15:52:31 Add hb-ot-name.h Actual name-fetching API to come later. New API: hb_name_id_t HB_NAME_ID_INVALID
Ebrahim Byagowi dc49bd8d 2018-10-12T03:00:59 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.
Behdad Esfahbod cf975ac6 2018-10-11T14:07:44 Remove use of deprecated function
David Corbett 91067716 2017-12-08T11:21:14 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.
David Corbett 2c7d4db7 2017-12-29T20:19:05 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`.
Ebrahim Byagowi 1a7fed63 2018-08-01T12:15:44 Revert "Add a new API, hb_ot_layout_get_feature_name_ids (#976)" (#1121) This reverts commit 0c1b287b72e91e0898d75acb5d5acf1c6b9a7498.
Garret Rieger 7d92bef9 2018-07-30T17:17:43 [subset] collect features first, then use those to collect lookups.
Ebrahim Byagowi 0c1b287b 2018-07-21T21:14:48 Add a new API, hb_ot_layout_get_feature_name_ids (#976) This new API returns cvXX and ssXX related NameId, things like featUiLabelNameId, featUiTooltipTextNameId, sampleTextNameId, ... of cvXX and UINameId of ssXX, in a unified way. 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.
Garret Rieger 57badadb 2018-06-06T16:02:51 [subset] add a new closure call to hb-ot-layout that can compute the closure over multiple lookups.
Ebrahim Byagowi f24b0b97 2018-04-12T13:40:45 Update the links and revive the dead ones
Behdad Esfahbod 790a1170 2018-03-07T15:31:15 [ot] Remove hb-ot-base.h BASE table API will go into hb-ot-layout.h.
Behdad Esfahbod 551fa2d2 2018-02-25T16:32:17 [BASE] Minor
Behdad Esfahbod 30c42b64 2016-09-10T03:32:39 [GX] Add hb_ot_layout_table_find_feature_variations()
Behdad Esfahbod ec87ba9b 2016-09-10T03:53:11 [GX] Add hb_ot_layout_feature_with_variations_get_lookups()
Behdad Esfahbod 1ba767cd 2016-09-26T21:57:14 [MATH] Move API from hb-ot-layout.h to hb-ot-math.h
Behdad Esfahbod 559eb564 2016-09-26T21:46:05 [MATH] Wire up get_glyph_assembly()
Behdad Esfahbod 353f455a 2016-09-26T21:22:48 [MATH] Wire up get_glyph_variants()
Behdad Esfahbod 7fe0e28c 2016-09-26T17:51:47 [MATH] Start fleshing out glyph variant API
Behdad Esfahbod 8bcf517f 2016-09-26T12:12:41 [MATH] Clean up get_italics_correction()
Behdad Esfahbod 8a8cfad9 2016-09-26T11:47:05 [MATH] Cleanup previous commit a bit
Frédéric Wang d7182d12 2016-08-25T11:15:31 MATH Table: Add API to access glyph info.
Frédéric Wang 319ff591 2016-08-25T11:06:41 MATH Table: Add API to access math contants.
Behdad Esfahbod 4d3892e9 2016-09-26T10:45:58 [MATH] Fixups for previous commit
Frédéric Wang 5fbcb992 2016-08-25T10:47:15 MATH Table: Add API to check availability of math data.
Chun-wei Fan 835bbdc7 2015-11-19T18:34:12 Public headers: Decorate public symbols with HB_EXTERN This prepares the headers for exporting symbols using visibility attributes or __declspec(dllexport), so that we do not need to maintain symbols listing files, as this is what was and is done in GLib and GTK+.
Behdad Esfahbod 7627100f 2014-07-11T14:54:42 Mark unsigned integer literals with the u suffix Simplifies hb_in_range() calls as the type can be inferred. The rest is obsessiveness, I admit.
Behdad Esfahbod 911ca386 2014-06-24T10:20:36 Add back API removed recently Add hb_ot_layout_language_get_required_feature_index() again, which is used in Pango. This was removed in da132937989acb4d8ca9bd41c79f98750e7dda30 in favor of hb_ot_layout_language_get_required_feature(). API changes: - Added hb_ot_layout_language_get_required_feature_index back.
Jonathan Kew da132937 2014-04-27T14:05:24 Rework handling of requiredFeature to solve problem with rlig in arial.ttf from winxp https://bugzilla.mozilla.org/show_bug.cgi?id=986802 Fixes https://github.com/behdad/harfbuzz/pull/39 API Change: -hb_ot_layout_language_get_required_feature_index +hb_ot_layout_language_get_required_feature New API takes an extra pointer argument. Pass NULL in to get behavior of previous API. Reworked by behdad
Luis de Bethencourt fbd4acc5 2013-12-22T08:02:11 Clean ht-ob headers
Behdad Esfahbod 27674b4b 2013-10-03T14:54:50 [OTLayout] Protect against out-of-range lookup indices Filter them out when compiling map.
Behdad Esfahbod 6c48f20e 2013-09-09T15:43:10 [otlayout] Add structs for JSTF table
Behdad Esfahbod 875a5cbc 2012-12-11T14:17:01 [OTLayout] Change hb_ot_layout_get_params() API And add implementation for StylisticSet UINameID. No API yet.
Behdad Esfahbod 4ab99fb8 2012-11-30T15:02:04 Minor
Behdad Esfahbod e9ad71de 2012-11-30T08:10:26 [OTLayout] Rename hb_ot_layout_position_get_size() to hb_ot_layout_get_size_params()
Behdad Esfahbod f54cce3c 2012-11-26T14:02:31 [OTLayout] Implement 'size' feature
Behdad Esfahbod a88e7160 2012-11-24T02:31:02 [OTLayout] Implement hb_ot_layout_collect_lookups() Untested.
Behdad Esfahbod e8cfdd7f 2012-11-16T19:07:06 Start implementing collect_glyphs() operation Not functional yet.
Behdad Esfahbod 89ca8eeb 2012-11-16T13:53:40 Implement hb_ot_layout_get_glyphs_in_class()
Behdad Esfahbod 5a08ecf9 2012-11-16T13:34:29 Implement hb_ot_layout_get_glyph_class()
Behdad Esfahbod 977f1740 2012-11-16T13:10:07 Unbreak tests
Behdad Esfahbod f3064103 2012-11-15T18:39:46 Bunch of independent changes (ouch) API additions: hb_segment_properties_t HB_SEGMENT_PROPERTIES_DEFAULT hb_segment_properties_equal() hb_segment_properties_hash() hb_buffer_set_segment_properties() hb_buffer_get_segment_properties() hb_ot_layout_glyph_class_t hb_shape_plan_t hb_shape_plan_create() hb_shape_plan_create_cached() hb_shape_plan_get_empty() hb_shape_plan_reference() hb_shape_plan_destroy() hb_shape_plan_set_user_data() hb_shape_plan_get_user_data() hb_shape_plan_execute() hb_ot_shape_plan_collect_lookups() API changes: Rename hb_ot_layout_feature_get_lookup_indexes() to hb_ot_layout_feature_get_lookups(). New header file: hb-shape-plan.h And a bunch of prototyped but not implemented stuff. Coming soon. (Tests fail because of the prototypes right now.)
Behdad Esfahbod 362a990b 2012-11-15T14:57:31 Rename hb_ot_layout_would_substitute_lookup() and hb_ot_layout_substitute_closure_lookup() To match upcoming API.
Behdad Esfahbod d9b204d3 2012-08-23T16:22:28 [GSUB] Allow non-zero-context matching in would_apply() To be used in the next patch.
Behdad Esfahbod 5f4c5286 2012-08-08T16:53:37 Minor
Behdad Esfahbod b0e6a26a 2012-08-02T08:11:14 [OT] Hide some API It was impossible to meaningfully use them from the outside these days.
Behdad Esfahbod 1e7d8606 2012-07-31T23:41:06 [GPOS] Adjust mark advance-width zeroing logic If there is no GPOS, zero mark advances. If there *is* GPOS and the shaper requests so, zero mark advances for attached marks. Fixes regression with Tibetan, where the font has GPOS, and marks a glyph as mark where it shouldn't get zero advance.
Behdad Esfahbod 05bd1b63 2012-07-30T19:30:01 [GSUB/GPOS] Move glyph props matching around
Behdad Esfahbod 11f4c87d 2012-07-30T02:36:46 [OT] Remove hb_ot_layout_ensure() I didn't like it from the beginning.
Behdad Esfahbod cfe98826 2012-07-27T03:06:30 Add hb_ot_layout_ensure() and hb_uniscribe_font_ensure()
Behdad Esfahbod e72b360a 2012-07-19T14:35:23 Refactor / finish would_apply() operation Untested.
Behdad Esfahbod 5caece67 2012-04-23T23:03:12 Make closure() return void
Behdad Esfahbod 0b08adb3 2012-04-23T22:41:09 Add hb_set_t
Behdad Esfahbod 6a9be5bd 2012-04-23T22:23:17 Rename hb_glyph_map_t to hb_set_t
Behdad Esfahbod c64ddab3 2012-04-23T15:28:35 Flesh out closure() for GSUB The GSUBGPOS part still missing.
Behdad Esfahbod 3e32cd95 2012-04-23T13:20:52 Minor
Behdad Esfahbod d1c9eb45 2012-04-12T13:17:44 Make it an error to include non-top-level headers Users should #include <hb.h> (or hb-ft.h, hb-glib.h, etc), but never things like hb-shape.h directly. This makes it easier to refactor headers later on without breaking compatibility.
Behdad Esfahbod c47a31fb 2011-07-30T20:57:01 [OT] Save chosen script tag
Behdad Esfahbod 60fbb360 2011-05-19T18:46:15 [Vertical] GPOS is always done with horizontal origin
Behdad Esfahbod 46d6a21c 2011-05-11T22:33:13 [API] Add hb_ot_layout_substitute_start/finish()
Behdad Esfahbod 72657e4c 2011-05-02T20:46:32 [API] Make hb_font_create() take a face and reference it
Behdad Esfahbod 2409d5f8 2011-04-21T17:14:28 Update Copyright headers