Hello, I have been debugging this issue for the last few days and found that when using pango (pango-1.26.2) with ft2 backend, GSUBs are not being applied (in telugu using lohit_telugu font). I traced this to harfbuzz. When I use an older version of pango (pango-1.12.4) where harfbuzz is not being used, gsub works without any issues. I saw a similar issue mentioned for Arabic font where pango-cairo was working and pango-ft2 was not. http://www.mail-archive.com/gtk-i18n-list gnome org/msg01565.html I tried with cairo backend and it worked since cairo was using Uniscribe. When I forced cairo to use FT2 backend, I got back the same results of gsub not being applied. pango-1.26.2 works without any issues in linux so I compared the two using gdb and I noticed that in win32,in function indic_engine_shape, ruleset->rules->len was returning 0, but in linux it was returning valid value of 7. I traced this in hb_ot_layout_table_find_script and found that find_script_index was returning error for telugu script. You can reproduce this with the attached source file. You will notice that when using pango-1.12.4 you will get one glyph (correct) but when using pango-1.26.2 you will get two glyphs. I am using MinGW and Msys to compile just pango, I am using binary packages from GTK site for other packages. I am using the following command for compiling. g++ gTestPango.cpp `pkg-config.exe pangoft2 --cflags --libs` ./a.exe > all.txt gcc gtestcairo.c `pkg-config.exe pangocairo --cflags --libs` ./a.exe test.png This is the command I am using for compiling pango. ./configure --with-included-modules --prefix=/mingw make make install Warm Regds, Ravi Kiran.
Attachment:
gtestcairo.c
Description: Binary data
Attachment:
gTestPango.cpp
Description: Binary data