From 9f2c5e3b3a1f1cf8f4c4cd15f1e4ca84cf998267 Mon Sep 17 00:00:00 2001 From: Adrian Johnson Date: Mon, 26 Oct 2009 11:09:16 +0200 Subject: [PATCH] Take printer margins into account on Windows Fixes bug #381371. --- gtk/gtkprintoperation-win32.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/gtk/gtkprintoperation-win32.c b/gtk/gtkprintoperation-win32.c index 3da48cb708..b7210f0d8b 100644 --- a/gtk/gtkprintoperation-win32.c +++ b/gtk/gtkprintoperation-win32.c @@ -444,6 +444,7 @@ win32_start_page (GtkPrintOperation *op, GtkPrintOperationWin32 *op_win32 = op->priv->platform_data; LPDEVMODEW devmode; GtkPaperSize *paper_size; + double x_off, y_off; devmode = GlobalLock (op_win32->devmode); @@ -468,6 +469,10 @@ win32_start_page (GtkPrintOperation *op, ResetDCW (op_win32->hdc, devmode); GlobalUnlock (op_win32->devmode); + + x_off = GetDeviceCaps (op_win32->hdc, PHYSICALOFFSETX); + y_off = GetDeviceCaps (op_win32->hdc, PHYSICALOFFSETY); + cairo_surface_set_device_offset (op_win32->surface, -x_off, -y_off); StartPage (op_win32->hdc); }