HarfBuzz text shaping engine
Go to file
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
.ci [ci] minor, bring back the removed assertion 2018-03-05 13:02:50 +03:30
.circleci [circleci] Add an iOS bot (#1233) 2018-10-10 17:12:52 +03:30
docs Refactor the selection of script and language tags 2018-10-11 13:54:28 -04:00
m4 Delete pkg.m4 2018-08-29 15:43:39 -07:00
src Refactor the selection of script and language tags 2018-10-11 13:54:28 -04:00
test Refactor the selection of script and language tags 2018-10-11 13:54:28 -04:00
util Remove HAVE_OT 2018-10-10 16:32:35 -04:00
.editorconfig Minor build related changes 2018-03-30 22:25:35 +04:30
.travis.yml State our graphite2 dependency no-deprecated compile flag (#1220) 2018-10-04 00:29:40 +03:30
AUTHORS Add Roozbeh to AUTHORS 2014-07-01 15:51:54 -04:00
BUILD.md Improve Markdown usage in BUILD.md. 2018-01-02 10:03:29 -08:00
CMakeLists.txt Remove HAVE_OT 2018-10-10 16:32:35 -04:00
COPYING Improve license information 2012-10-28 21:26:19 -07:00
Makefile.am Add README.wine.md and touch some other docs (#939) 2018-03-29 04:22:53 +04:30
NEWS 1.9.0 2018-09-10 11:37:24 +02:00
README Add Codacy badge 2018-06-01 16:30:38 -07:00
README.md Add README.md symlink to make github happy 2014-10-01 17:45:17 -04:00
README.python.md Add README.wine.md and touch some other docs (#939) 2018-03-29 04:22:53 +04:30
README.wine.md Add README.wine.md and touch some other docs (#939) 2018-03-29 04:22:53 +04:30
RELEASING.md 1.8.7 2018-08-08 22:01:38 -07:00
THANKS Bump version to 0.9.2 2012-08-10 14:50:05 -04:00
TODO [TODO] Clean up 2018-10-04 13:28:13 +02:00
appveyor.yml [ci] Another try on mingw bot 2018-09-29 02:11:05 +03:30
autogen.sh Add Ragel-generated files to git 2018-02-20 14:36:14 -08:00
configure.ac Remove HAVE_OT 2018-10-10 16:32:35 -04:00
git.mk [git.mk] Update 2017-10-27 10:23:01 -06:00
harfbuzz.doap Move all references of old url to the new address (#622) 2017-11-20 14:49:22 -05:00
mingw32.sh Add mingw32.sh and mingw64.sh 2018-02-16 14:16:28 -08:00
mingw64.sh Add mingw32.sh and mingw64.sh 2018-02-16 14:16:28 -08:00
replace-enum-strings.cmake CMake: Support building HarfBuzz-GObject 2017-10-18 23:48:11 +08:00

README.md

Build Status Build status CircleCI Coverity Codacy Badge Coverage Status ABI Tracker

This is HarfBuzz, a text shaping library.

For bug reports, mailing list, and other information please visit:

http://harfbuzz.org/

For license information, see the file COPYING.

Documentation: https://harfbuzz.github.io