Aric Stewart : usp10: Apply all the GSUB features specified in Microsofts Typesetting documentation for Arabic Shaping .
Alexandre Julliard
julliard at winehq.org
Fri May 28 09:43:10 CDT 2010
Module: wine
Branch: master
Commit: cddb5d6455d0ed18eaff4f6ad9215bb2b5ca7072
URL: http://source.winehq.org/git/wine.git/?a=commit;h=cddb5d6455d0ed18eaff4f6ad9215bb2b5ca7072
Author: Aric Stewart <aric at codeweavers.com>
Date: Thu May 27 15:03:34 2010 -0500
usp10: Apply all the GSUB features specified in Microsofts Typesetting documentation for Arabic Shaping.
---
dlls/usp10/shape.c | 18 +++++++++++++++++-
1 files changed, 17 insertions(+), 1 deletions(-)
diff --git a/dlls/usp10/shape.c b/dlls/usp10/shape.c
index fe2ea53..0a4f5b9 100644
--- a/dlls/usp10/shape.c
+++ b/dlls/usp10/shape.c
@@ -194,6 +194,17 @@ static const char* contextual_features[] =
"medi"
};
+static const char* arabic_GSUB_features[] =
+{
+ "rlig",
+ "calt",
+ "liga",
+ "dlig",
+ "cswh",
+ "mset",
+ NULL
+};
+
static INT GSUB_is_glyph_covered(LPCVOID table , UINT glyph)
{
const GSUB_CoverageFormat1* cf1;
@@ -719,7 +730,12 @@ void SHAPE_ShapeArabicGlyphs(HDC hdc, ScriptCache *psc, SCRIPT_ANALYSIS *psa, WC
}
}
- apply_GSUB_feature(hdc, psa, psc->GSUB_Table, pwOutGlyphs, dirL, pcGlyphs, "rlig");
+ i = 0;
+ while (arabic_GSUB_features[i] != NULL)
+ {
+ apply_GSUB_feature(hdc, psa, psc->GSUB_Table, pwOutGlyphs, dirL, pcGlyphs, arabic_GSUB_features[i]);
+ i++;
+ }
HeapFree(GetProcessHeap(),0,context_shape);
HeapFree(GetProcessHeap(),0,context_type);
More information about the wine-cvs
mailing list