Re: gdi32: Fix the glyph rotation transformation matrix.

2011-02-24 Thread Alexander Kochetkov
Hi, Dmitry Timoshkov! The patch brakes rotation for modes with positive axis. Try apply this patch to the test application attached to the bug #22996. diff -Naur ./test_emf_textout.orig/test_emf_textout/test.c ./test_emf_textout/test_emf_textout/test.c ---

Re: gdi32: Fix the glyph rotation transformation matrix.

2011-02-24 Thread Alexander Kochetkov
Also you can try the following combinations: 1) x - positive, y - positive, 2) x - a positive, y - negative; 3) x - negative, y - positive, 4) x - negative, y - negative I would like to offer another solution to this problem. I can do than this evening.

Re: gdi32: Use graphics mode specified at the EMF creation time when playing EMR_EXTTEXTOUT record.

2011-02-24 Thread Alexander Kochetkov
+ +        SetGraphicsMode(hdc, old_mode);        break;     } Hi, Dmitry Timoshkov! Needs to reselect font again after restore old_mode in case pExtTextOutW- iGraphicsMode != old_mode. Otherwise, the font will remain with the wrong glyph orientation. I can write a test demonstrating the

Re: gdi32: Use graphics mode specified at the EMF creation time when playing EMR_EXTTEXTOUT record.

2011-02-24 Thread Alexander Kochetkov
Hi, Dmitry Timoshkov! Needs to reselect font again after restore old_mode in case pExtTextOutW- iGraphicsMode != old_mode. Otherwise, the font will remain with the wrong glyph orientation. I can write a test demonstrating the problem. Resect font is needed only if pExtTextOutW-

Please reject patch 71094 it is wrong.

2011-02-12 Thread Alexander Kochetkov
71094 New Alexander Kochetkov [resend] gdi32: Text output of records EMR_EXTTEXTOUTA/W depend on field iGraphicsMode

Re: COM implementation clean up

2010-11-24 Thread Alexander Kochetkov
Hi all, The code like static inline MyObject *impl_from_IMyInterface(IMyInterface *iface) { return (MyObject*)((char*)iface - FIELD_OFFSET(MyObject, IMyInterface_iface)); } could be replaced with static inline MyObject *impl_from_IMyInterface(IMyInterface *iface) { return