Akihiro Sagawa sagawa.aki@gmail.com writes:
Hi,
This patch enhances full-width character glyph advance when we choose fixed-pitch font.
Windows 2000 (or XP for Japanese) and later adjust fixed-pitch full-width character glyph advances so that two half-width characters' advance equals to one full-width character's advance. Because CJK fixed-pitch font, such as MS Gothic, is designed as full-width character (e.g. Kanji) has a double advance of half-width character (e.g. ASCII) and many developpers expect that.
Please refer Microsoft document KB 417434 [1] and white paper [2] for details.
[1] ... http://support.microsoft.com/kb/417434/ja (written in Japanese) [2] ... http://msdn.microsoft.com/ja-jp/library/cc979401.aspx (written in Japanese)
try 5:
- Add patch description above.
- Fix avgAdvance's rounding method. (as in get_outline_text_metrics)
- Refine a commit message, "Ensure" to "Adjust" and "double width" to "double advance".
try 4:
- Fix full-width character detection that causes test failure.
try 3:
- Improve full-width character detection.
- Support fake italic transformation.
- Choose non-linked fonts in the test case.
- Add more trace messages.
try 2:
- Add rotated transformation tests.
Regards, Akihiro Sagawa
dlls/gdi32/freetype.c | 37 ++++++++++++++++++-- dlls/gdi32/tests/font.c | 87 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 121 insertions(+), 3 deletions(-)
This is still failing here:
../../../tools/runtest -q -P wine -M gdi32.dll -T ../../.. -p gdi32_test.exe.so font.c && touch font.ok font.c:2549: Tests skipped: Font Droid Arabic Naskh doesn't contain 'x', skipping the test font.c:2549: Tests skipped: Font Droid Sans Armenian doesn't contain 'x', skipping the test font.c:2549: Tests skipped: Font Droid Sans Ethiopic doesn't contain 'x', skipping the test font.c:2549: Tests skipped: Font Droid Sans Georgian doesn't contain 'x', skipping the test font.c:2549: Tests skipped: Font Droid Sans Hebrew doesn't contain 'x', skipping the test font.c:2549: Tests skipped: Font Droid Sans Hebrew doesn't contain 'x', skipping the test font.c:3008: Tests skipped: Unable to retrieve first and last glyphs from cmap font.c:2549: Tests skipped: Font Droid Sans Japanese doesn't contain 'x', skipping the test font.c:2549: Tests skipped: Font Droid Sans Thai doesn't contain 'x', skipping the test font.c:2549: Tests skipped: Font OpenSymbol doesn't contain 'x', skipping the test font.c:2549: Tests skipped: Font rsfs10 doesn't contain 'x', skipping the test font.c:3756: Test failed: expected 19, got 0 (@IPAGothic:128) make[1]: *** [font.ok] Error 1
On Fri, 25 Jan 2013 12:07:14 +0100, Alexandre Julliard wrote:
This is still failing here:
...
font.c:3756: Test failed: expected 19, got 0 (@IPAGothic:128) make[1]: *** [font.ok] Error 1
Could you let me know IPAGothic font file's version or MD5 value? I guess this caused by font file (*.ttf) or FreeType bug. Because I had no test failures with IPAGothic on my environment (Ubuntu 12.04 with fonts-ipafont-gothic 00303-5).
Regards, Akihiro Sagawa