#define GDI_ERROR ((int)-1)
#endif
-#if defined(__WXUNIVERSAL__) || wxUSE_POSTSCRIPT_ARCHITECTURE_IN_MSW
+#if defined(__WXUNIVERSAL__) && wxUSE_POSTSCRIPT_ARCHITECTURE_IN_MSW
#define wxUSE_PS_PRINTING 1
#else
#define wxUSE_PS_PRINTING 0
::EndPage((HDC) m_hDC);
}
+
+wxRect wxPrinterDC::GetPaperRect()
+
+{
+ if (!Ok()) return wxRect(0, 0, 0, 0);
+ int w = ::GetDeviceCaps((HDC) m_hDC, PHYSICALWIDTH);
+ int h = ::GetDeviceCaps((HDC) m_hDC, PHYSICALHEIGHT);
+ int x = -::GetDeviceCaps((HDC) m_hDC, PHYSICALOFFSETX);
+ int y = -::GetDeviceCaps((HDC) m_hDC, PHYSICALOFFSETY);
+ return wxRect(x, y, w, h);
+}
+
+
#if !wxUSE_PS_PRINTING
// Returns default device and port names
{
// no support for StretchDIBits() or an error occurred if we got here
wxMemoryDC memDC;
- memDC.SelectObject(bmp);
+
+ memDC.SelectObjectAsSource(bmp);
Blit(x, y, width, height, &memDC, 0, 0, wxCOPY, useMask);