HarfBuzz text shaping engine
Go to file
Behdad Esfahbod 763e5466c0 Make it easier to use HB_BUFFER_FLAG_BOT/EOT
Previously, we expected users to provide BOT/EOT flags when the
text *segment* was at paragraph boundaries.  This meant that for
clients that provide full paragraph to HarfBuzz (eg. Pango), they
had code like this:

  hb_buffer_set_flags (hb_buffer,
                       (item_offset == 0 ? HB_BUFFER_FLAG_BOT : 0) |
                       (item_offset + item_length == paragraph_length ?
                        HB_BUFFER_FLAG_EOT : 0));

  hb_buffer_add_utf8 (hb_buffer,
                      paragraph_text, paragraph_length,
                      item_offset, item_length);

After this change such clients can simply say:

  hb_buffer_set_flags (hb_buffer,
                       HB_BUFFER_FLAG_BOT | HB_BUFFER_FLAG_EOT);

  hb_buffer_add_utf8 (hb_buffer,
                      paragraph_text, paragraph_length,
                      item_offset, item_length);

Ie, HarfBuzz itself checks whether the segment is at the beginning/end
of the paragraph.  Clients that only pass item-at-a-time to HarfBuzz
continue not setting any flags whatsoever.

Another way to put it is: if there's pre-context text in the buffer,
HarfBuzz ignores the BOT flag.  If there's post-context, it ignores
EOT flag.
2014-08-02 16:17:44 -04:00
docs Rename HB_VERSION_CHECK and hb_version_check to "atleast" 2014-06-20 14:09:57 -04:00
m4 Add ax_pthread.m4 2012-10-02 14:46:34 -04:00
src Make it easier to use HB_BUFFER_FLAG_BOT/EOT 2014-08-02 16:17:44 -04:00
test [hangul] Don't apply 'calt' 2014-07-31 18:54:43 -04:00
util [util] Note CSS compatibility in --help-features 2014-07-25 12:35:03 -04:00
.travis.yml [travis] Enable graphite2 2013-11-12 15:41:22 -05:00
AUTHORS Add Roozbeh to AUTHORS 2014-07-01 15:51:54 -04:00
Android.mk [Android.mk] Actually remove static library 2014-07-11 18:15:34 -04:00
COPYING Improve license information 2012-10-28 21:26:19 -07:00
Makefile.am Use AM_MISSING_PROG for ragel and git 2014-03-04 13:03:51 -08:00
NEWS 0.9.33 2014-07-22 18:02:11 -04:00
README Update README, etc 2011-05-25 15:40:49 -04:00
THANKS Bump version to 0.9.2 2012-08-10 14:50:05 -04:00
TODO Revert "Round when scaling values" 2013-09-03 20:11:01 -04:00
autogen.sh One more fix for build without gtk-doc 2014-03-21 12:53:08 -07:00
configure.ac 0.9.33 2014-07-22 18:02:11 -04:00
git.mk [git.mk] Update 2013-12-04 20:01:22 -05:00
harfbuzz.doap Minor 2011-05-27 04:14:42 -04:00

README

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.