summaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorOwen Taylor <otaylor@redhat.com>2004-01-26 19:23:35 +0000
committerOwen Taylor <otaylor@src.gnome.org>2004-01-26 19:23:35 +0000
commit6915d7fd36163f724aa336399dac611f14c99c9d (patch)
tree10d4583bb31953bdb7e49c53cd7f42008259d3a0 /modules
parent95e8d95b5caa59af6d3f8a9b4785881d0d4fd2f8 (diff)
downloadpango-6915d7fd36163f724aa336399dac611f14c99c9d.tar.gz
Suport CFF fonts as well. (#131202, Manjunath Sripadarao)
Mon Jan 26 14:20:34 2004 Owen Taylor <otaylor@redhat.com> * pango/opentype/pango-ot-info.c (is_truetype): Suport CFF fonts as well. (#131202, Manjunath Sripadarao)
Diffstat (limited to 'modules')
-rw-r--r--modules/thai/thai-shaper.c21
1 files changed, 16 insertions, 5 deletions
diff --git a/modules/thai/thai-shaper.c b/modules/thai/thai-shaper.c
index 39c2c574..5fcbc429 100644
--- a/modules/thai/thai-shaper.c
+++ b/modules/thai/thai-shaper.c
@@ -302,15 +302,26 @@ add_glyph (ThaiFontInfo *font_info,
pango_font_get_glyph_extents (font_info->font,
glyphs->glyphs[index].glyph, &ink_rect, &logical_rect);
- if (combining || logical_rect.width > 0)
+ if (combining)
{
- glyphs->glyphs[index].geometry.x_offset = 0;
- glyphs->glyphs[index].geometry.width = logical_rect.width;
+ glyphs->glyphs[index].geometry.x_offset =
+ glyphs->glyphs[index - 1].geometry.width;
+ glyphs->glyphs[index].geometry.width =
+ logical_rect.width + glyphs->glyphs[index - 1].geometry.width;
+ glyphs->glyphs[index - 1].geometry.width = 0;
}
else
{
- glyphs->glyphs[index].geometry.x_offset = ink_rect.width;
- glyphs->glyphs[index].geometry.width = ink_rect.width;
+ if (logical_rect.width > 0)
+ {
+ glyphs->glyphs[index].geometry.x_offset = 0;
+ glyphs->glyphs[index].geometry.width = logical_rect.width;
+ }
+ else
+ {
+ glyphs->glyphs[index].geometry.x_offset = ink_rect.width;
+ glyphs->glyphs[index].geometry.width = ink_rect.width;
+ }
}
glyphs->glyphs[index].geometry.y_offset = 0;
}