diff options
author | Behdad Esfahbod <behdad@gnome.org> | 2006-08-15 22:23:19 +0000 |
---|---|---|
committer | Behdad Esfahbod <behdad@src.gnome.org> | 2006-08-15 22:23:19 +0000 |
commit | 2f6a750a060e505e7190e0aebe650b901dcf455c (patch) | |
tree | 5b67ba04f335acaf12d634bf0da4322068915498 /modules | |
parent | 39a80ded9e79d92b70c5903ac9d4a3ae594f2fbb (diff) | |
download | pango-2f6a750a060e505e7190e0aebe650b901dcf455c.tar.gz |
Always use fallback shaping for vertical fonts.
2006-08-15 Behdad Esfahbod <behdad@gnome.org>
* modules/basic/basic-fc.c (basic_engine_shape): Always use
fallback shaping for vertical fonts.
* pango/pango-context.c (get_shaper_and_font): Always use basic
shaper for vertical items (east/west gravity).
Diffstat (limited to 'modules')
-rw-r--r-- | modules/basic/basic-fc.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/modules/basic/basic-fc.c b/modules/basic/basic-fc.c index 33478887..7d800bae 100644 --- a/modules/basic/basic-fc.c +++ b/modules/basic/basic-fc.c @@ -23,6 +23,7 @@ #include <config.h> #include <string.h> +#define PANGO_ENABLE_BACKEND 1 /* to get access to ->font_pattern :( */ #include <glib/gprintf.h> #include "pango-engine.h" #include "pango-utils.h" @@ -337,6 +338,7 @@ basic_engine_shape (PangoEngineShape *engine, const char *p; int cluster = 0; int i; + FcBool vertical = FcFalse; g_return_if_fail (font != NULL); g_return_if_fail (text != NULL); @@ -348,6 +350,16 @@ basic_engine_shape (PangoEngineShape *engine, if (!face) return; +#ifdef FC_VERTICAL_LAYOUT + FcPatternGetBool (fc_font->font_pattern, FC_VERTICAL_LAYOUT, 0, &vertical); +#endif + + if (vertical == FcTrue) + { + fallback_shape (engine, font, text, length, analysis, glyphs); + goto out; + } + ruleset = get_ruleset (face); if (!ruleset) { |