[2/4] gdi32: Fix text rotation problem in GM_ADVANCED graphics mode.
On 1/7/2014 17:33, Ralf Habacker wrote:
This patch detects operational condition first and then removes temporary rotation from the world transform. Bug: http://bugs.winehq.org/show_bug.cgi?id=33190 --- dlls/gdi32/font.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+)
+ XFORM old; + BOOL exclude_rotation = FALSE; + if ( GetGraphicsMode( hdc ) == GM_ADVANCED ) + { + GetWorldTransform( hdc, &old ); + XFORM xf = old; + if ( hasRotatedAndSameScaledMatrixOnly( &xf ) ) + { + exclude_rotation = TRUE; + removeRotationFromMatrix( &xf, NULL ); + SetWorldTransform( hdc, &xf ); + } + } + Flag really means do we need to restore transform or not.
done http://www.winehq.org/pipermail/wine-patches/2014-January/129513.html
+ if ( GetGraphicsMode( hdc ) == GM_ADVANCED && exclude_rotation
== TRUE )
+ { + SetWorldTransform( hdc, &old ); + } + Doesn't look like you need to check a mode again.
done, see above link Regards Ralf
participants (1)
-
Ralf Habacker