gdiplus: Improve precision of calculated pixel to units transformation.
Dmitry Timoshkov
dmitry at baikal.ru
Tue Jul 31 04:48:46 CDT 2012
This patch replaces 1.0/72.0 division by multiplication to 72.0 and
considerably improves precision of calculated pixel to units result.
---
dlls/gdiplus/gdiplus.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/dlls/gdiplus/gdiplus.c b/dlls/gdiplus/gdiplus.c
index 9b43cd6..2599c58 100644
--- a/dlls/gdiplus/gdiplus.c
+++ b/dlls/gdiplus/gdiplus.c
@@ -36,7 +36,7 @@
WINE_DEFAULT_DEBUG_CHANNEL(gdiplus);
static const REAL mm_per_inch = 25.4;
-static const REAL inch_per_point = 1.0/72.0;
+static const REAL point_per_inch = 72.0;
static Status WINAPI NotificationHook(ULONG_PTR *token)
{
@@ -353,7 +353,7 @@ REAL units_to_pixels(REAL units, GpUnit unit, REAL dpi)
case UnitDisplay:
return units;
case UnitPoint:
- return units * dpi * inch_per_point;
+ return units * dpi / point_per_inch;
case UnitInch:
return units * dpi;
case UnitDocument:
@@ -376,7 +376,7 @@ REAL pixels_to_units(REAL pixels, GpUnit unit, REAL dpi)
case UnitDisplay:
return pixels;
case UnitPoint:
- return pixels / dpi / inch_per_point;
+ return pixels * point_per_inch / dpi;
case UnitInch:
return pixels / dpi;
break;
--
1.7.11.2
More information about the wine-patches
mailing list