src/hb-ot-layout.h


Log

Author Commit Date CI Message
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 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`.
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.
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 ec87ba9b 2016-09-10T03:53:11 [GX] Add hb_ot_layout_feature_with_variations_get_lookups()
Behdad Esfahbod 30c42b64 2016-09-10T03:32:39 [GX] Add hb_ot_layout_table_find_feature_variations()
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
Behdad Esfahbod 8f0d7e0c 2011-04-15T18:59:56 Remove hb_buffer_clear_positions(), add hb_ot_layout_position_start()
Behdad Esfahbod 1e7c1fcb 2010-10-27T22:48:31 Move code around
Behdad Esfahbod 98370e89 2010-10-27T17:39:01 WIP removing external synthesized GDEF support and implementing it internally
Behdad Esfahbod e204674f 2010-10-27T12:32:02 Rename hb_ot_layout_get_lig_carets() to hb_ot_layout_get_ligature_carets()
Behdad Esfahbod 3357d145 2010-10-27T12:30:46 Implement vertical support in get_lig_carets()
Behdad Esfahbod acdba3f9 2010-07-23T15:11:18 Prefer C linkage
Behdad Esfahbod c755cb3e 2010-04-22T00:11:43 Change header comment
Behdad Esfahbod 555d1127 2010-01-26T12:58:59 [GDEF] Fix bug in building synthetic GDEF
Behdad Esfahbod 2014b8d1 2009-12-20T20:58:26 Hook OpenType shaping up Default features only for now.
Behdad Esfahbod b4b4272c 2009-11-06T17:46:33 Oops, wrong change
Behdad Esfahbod 52ea4776 2009-11-06T17:45:38 Change order of font and face for API consistency
Behdad Esfahbod 9db8ad75 2009-11-06T16:47:31 Add hb_ot_layout_position_finish() We expect buffer to be setup with default positions before GPOS.
Behdad Esfahbod 8a3511ac 2009-11-04T19:45:39 Add hb_language_t as well as language/script conversion to OT tags
Behdad Esfahbod e21899bc 2009-11-04T16:36:14 Fix array query API The array query APIs now all do: - Return the total number of items - Take a start_offset, such that individual items can be fetched - The _count IN/OUT variable always has number of items written into the array upon return of the function
Behdad Esfahbod 6bdab706 2009-08-10T09:35:11 [HB] Indent
Behdad Esfahbod 17878255 2009-08-08T16:57:27 [HB] Remove hb_ot_layout_table_find_feature() That function doesn't make much sense as multiple features in the table may have the same tag.
Behdad Esfahbod 468769b8 2009-08-08T16:53:23 [HB] Rename hb_ot_layout_feature_mask_t to hb_mask_t
Behdad Esfahbod bff3c0fd 2009-08-07T19:46:30 [HB] Remove clumsy macros and improve API
Behdad Esfahbod 0ead481a 2009-08-02T17:41:36 [HB] Port ot-layout to new public API
Behdad Esfahbod 0090dc0f 2009-07-30T16:28:45 [HB] Remove hinting setting and use ppem==0 to mean "no hinting"
Behdad Esfahbod 02a37069 2009-07-29T18:41:25 [HB] Move direction to buffer
Behdad Esfahbod f9cd1014 2009-07-28T15:43:34 Apply patch from Jonathan Kew
Behdad Esfahbod 55520d2a 2009-06-10T23:26:51 XX
Behdad Esfahbod 2ebb89d6 2009-07-25T19:09:01 Revert "XX" This reverts commit c939f6aff405ca7b10b1f1538f46148bff719fcb.
Behdad Esfahbod 62964afc 2009-05-26T12:40:10 [HB] Implement get_lig_carets()
Behdad Esfahbod 79420ad9 2009-05-26T12:24:16 [HB] Add get_attach_points()
Behdad Esfahbod f96ffd43 2009-05-24T15:01:16 [HB] simplify macros
Behdad Esfahbod 6c78683c 2009-05-25T03:22:19 [HB] Update copyright years
Behdad Esfahbod 0f7e6b2c 2009-05-20T04:16:35 [GPOS] Fix more brokenness
Behdad Esfahbod 5c0adce1 2009-05-20T05:42:12 [HB] Rename harfbuzz-buffer to hb-buffer
Behdad Esfahbod b857b49c 2009-05-20T05:35:14 [HB] Remove all references to the old code!
Behdad Esfahbod e1593a6e 2009-05-20T04:51:30 [GPOS] Finally it's working, up to Cursive Wow, IranNastaliq renders perfectly again!
Behdad Esfahbod 9c42f05a 2009-05-18T17:43:49 Switch Pango to new, defunt, GPOS
Behdad Esfahbod 5e5eb057 2009-05-18T17:09:33 [HB] Start GPOS!