I don't expect ragel to be creating too much noise in its generated
output, and including this in-tree helps users right now. We can
revisit this later if it proved to be too much trouble.
Apparently even that doesn't make check-internal-symbols.sh happy with
mingw32. Going to disable that for DLLs again, but hopefully the
export-file is doing *something*.
Does not attempt to handle clusters in a Uniscribe- or HarfBuzz-compatible way;
just returns the original string indexes that CT maintains. These may even be
out-of-order in the case of reordrant glyphs.
Also remove shaper_options argument to hb_shape_full(). That was
unused and for "future". Let it go.
More shaper API coming in preparation for plan/planned API.
Remove hb_ft_get_font_funcs() as it cannot be used by the user anyway.
Add hb_ft_font_set_funcs(). Which will make the font internally use
FreeType. That is, no need for the font to have created using the
hb-ft API. Just create using hb_face_create()/hb_font_create() and
then call this on the font (after having set font scale). This
internally creates an FT_Face and attached to the font.
hb_shape() now accepts a shaper_options and a shaper_list argument.
Both can be set to NULL to emulate previous API. And in most situations
they are expected to be set to NULL.
hb_shape() also returns a boolean for now. If shaper_list is NULL, the
return value can be ignored.
shaper_options is ignored for now, but otherwise it should be a
NULL-terminated list of strings.
shaper_list is a NULL-terminated list of strings. Currently recognized
strings are "ot" for native OpenType Layout implementation, "uniscribe"
for the Uniscribe backend, and "fallback" for the non-complex backend
(that will be implemented shortly). The fallback backend never fails.
The env var HB_SHAPER_LIST is also parsed and honored. It's a
colon-separated list of shaper names. The fallback shaper is invoked if
none of the env-listed shapers succeed.
New API hb_buffer_guess_properties() added.
Nothing functional in there yet.
So far, we're parsing IndicSyllabicCategory.txt and IndicMatraCategory.txt
fils from Unicode Character Database and store them in an array to be used
by the shaper. Also hooked up the shaper, but it does not do anything
right now.
2007-10-11 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/*: Mark internal symbols as HB_INTERNAL and
define that to static in harfbuzz.c.
* pango/opentype/harfbuzz-buffer-internal.h: New file.
2007-10-11 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/Makefile.am: Build harfbuzz.c instead of individual
source files, to let compiler go wild with optimizations!
2007-10-11 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/Makefile.am: Don't include harfbuzz-dump.[ch] in
libharfbuzz.a. Those are just used by the harfbuzz-dump tool.
2007-04-30 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/Makefile.am: Link freetype to harfbuzz-dump, for
those systems that don't track dependencies automatically.
2006-06-22 Behdad Esfahbod <behdad@gnome.org>
Bug 345600 – cvs build error in pango/opentype/Makefile
* pango/opentype/Makefile.am: Rename variable SOURCES to MAINSOURCES.
Some automake versions seem to use it or something.
2006-03-31 Behdad Esfahbod <behdad@gnome.org>
Convert pango/opentype to the new project called HarfBuzz.
* pango/opentype/*: Restructured.
* pango/pango-ot-*: Updated to use HarfBuzz symbol names.
2006-01-25 Behdad Esfahbod <behdad@gnome.org>
* configure.in: If major.minor of required and available glib versions
are the same, add -DG_DISABLE_DEPRECATED to GLIB_CFLAGS. (bug #328617)
* */Makefile.am: Remove hardcoded -DG_DISABLE_DEPRECATED.
2005-07-22 Owen Taylor <otaylor@redhat.com>
Patch from David Turner. Review and testing by Behdad Esfahbod
* pango/opentype/ftglue.[ch] Makefile.am: Glue layer that provides
implementation of the internal functions that the opentype code
expects in terms of publically exported FreeType API.
* pango/opentype/ftxgdef.c pango/opentype/ftxgpos.c
pango/opentype/ftxgsub.c pango/opentype/ftxopen.c
pango/opentype/otlbuffer.c pango/opentype/pango-ot-info.c
pango/opentype/pango-ot-ruleset.c: Remove includes of
internal headers. Small changes to work with ftglue.[ch]
* pango/opentype/fterrcompat.h: Remove: no longer needed.
* pango/opentype/ftxgpos.c: Use FT_IS_SFNT(face) rather
than poking at FT_MODULE_CLASS (face->driver)->module_name.
* pango/opentype/ftxopen.c (Free_FeatureList): Free
fl->ApplyOrder. (Found by Behdad)
2005-04-12 Tor Lillqvist <tml@novell.com>
* pango/opentype/Makefile.am: Rename LDADDS to
libpango_ot_la_LIBADD to actually make libpango-ot.la link with
it.
* pango/pangowin32.def: Rename get_scale_factor to
get_metrics_factor here, too. (#300222, Ivan Wong)
Sun Feb 29 09:25:13 2004 Owen Taylor <otaylor@redhat.com>
Rework opentype interfaces and other changes to make GPOS
work for Arabic. (Most of #117282, #121060)
* pango/opentype/otlbuffer.[ch]: OTL_Buffer that
acts as a replacement for the separate GSUB and
GPOS string structures and hides many of the internal
details.
* pango/opentype/ftxgsub.[ch] pango/opentype/ftxgpos.[ch]:
Adapt to OTL_Buffer.
* pango/opentype/ftxgpos.c: Redo handling of cursive
chains so that it actually works.
* pango/pango-ot.h pango/opentype/pango-ot-buffer.c:
Pango wrapper around OTL_Buffer.
* pango/pango-ot.h pango/pango-ot-ruleset.c pango/pango-ot-buffer.c:
Split pango_ot_ruleset_shape() into pango_ot_ruleset_substitute(),
pango_ot_ruleset_position(), make them act on
PangoOTBuffer, add a separate pango_ot_buffer_output()
which does the default positioning and writes to a
PangoGlyphString.
* modules/arabic/arabic-fc.c modules/indic/indic-fc.c
modules/indic/mprefixups.[ch]: Adapt to new OpenType
interfaces; add GPOS features for Arabic.
* pango/opentype/pango-ot-info.c: Don't derive class information
from Unicode properties for Arabic presentation forms,
let the shaping process derive the properties.
2003-03-11 James Henstridge <james@daa.com.au>
* autogen.sh: make similar changes to the ones on glib head (call
gtk-docize, etc).
* configure.in: move some calculations into M4 macros, rather than
calculating them when configure runs.
Use AC_HELP_STRING where appropriate.
Replace gtk-doc checks with a call to GTK_DOC_CHECK.
Replace AC_OUTPUT_COMMANDS() call with a number of calls to
AC_CONFIG_COMMANDS (once per created file).
Get rid of the "chmod +x pango-config" bit, because there is no
pango-config anymore.
* Makefile.am: get rid of custom distcheck rule, and set
DISTCHECK_CONFIGURE_FLAGS, which is equivalent.
Use += to select which .pc files to install.
* pango/Makefile.am: Add rules to rebuild module-defs* files, and
remove them on clean.
Reorder so that rules related to each individual library are next
to each other.
Use BUILT_SOURCES for built sources.
* pango/opentype/Makefile.am: don't use STRIP_BEGIN/STRIP_END.
* modules/*/Makefile.am: simplify module makefiles through use of
+=, and regularise them a bit (fixed a few bugs in the process).
* docs/Makefile.am: remove common rules, and instead include
gtk-doc.make.
* examples/Makefile.am: add pango.modules to CLEANFILES.
* tests/Makefile.am: remove temporary files on clean.
Mon Feb 17 13:06:39 2003 Owen Taylor <otaylor@redhat.com>
* configure.in **/Makefile.am: Add an --enable-debug
configure argument defaulting to 'yes' for unstable
releases and 'minimum' for stable releases.
For minimum, -DG_DISABLE_CAST_CHECKS.
* pango/pangofc-fontmap.cI pango/pangoft2-fontmap.c
pango/pangoxft-fontmap.c: Add caching of fontsets
(#104495, initial patch and review by Soeren Sandmann)
* pango/pangofc-fontmap.cI pango/pangoft2-fontmap.c
pango/pangoxft-fontmap.c pango/pangoft2-private.h
pango/pangoxft-private.h: Remove cache of recently freed
fonts; not necessary now that we cache fontsets.
* pango/pangofc-fontmap.cI (pango_fc_pattern_set_free):
Rename from pango_fc_font_set_free to reflect
what it actually does.
* pango/pangofc-fontmap.cI pango/pangoft-fontmap.c
pango/pangoxft-fontmap.c: Combine clear-the-cache
functions; we didn't need separate clear-the-font-cache
and clear-the-pattern-cache functions.
2002-11-26 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* configure.in: Do not add GLIB_CFLAGS to CFLAGS.
* docs/Makefile.am, examples/Makefile.am,
modules/arabic/Makefile.am, modules/basic/Makefile.am,
modules/hangul/Makefile.am, modules/hebrew/Makefile.am,
modules/indic/Makefile.am, modules/tamil/Makefile.am,
modules/thai/Makefile.am, pango/Makefile.am,
pango/mini-fribidi/Makefile.am, pango/opentype/Makefile.am:
Instead add $(GLIB_CFLAGS) directly to INCLUDES (GTKDOC_CFLAGS for
docs/Makefile.am). Also some cosmetic line wrapping and
reindentation.
2002-09-24 Tor Lillqvist <tml@iki.fi>
* pango/opentype/pango-ot.def: Remove. Not used. (A static library
is built here. Exported entries are in ../pangoft2.def.)
* pango/opentype/Makefile.am (EXTRA_DIST): Remove from here, too.