patch 1306473
authorStefan Csomor <csomor@advancedconcepts.ch>
Fri, 18 Nov 2005 21:23:24 +0000 (21:23 +0000)
committerStefan Csomor <csomor@advancedconcepts.ch>
Fri, 18 Nov 2005 21:23:24 +0000 (21:23 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@36198 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/mac/carbon/printmac.cpp

index f6ad66c279772da5a1e034952eedd8e0dd0bb6d2..26f337298596636156abecb14293cb96eeaae042 100644 (file)
@@ -150,6 +150,13 @@ bool wxMacCarbonPrintData::TransferFrom( const wxPrintData &data )
     // PMDuplexMode not yet accessible via API
     // PMQualityMode not yet accessible via API
     // todo paperSize
+    PMResolution res;
+    PMPrinter printer;
+    PMTag tag = kPMMaxSquareResolution;
+    PMSessionGetCurrentPrinter(m_macPrintSession, &printer);
+    PMPrinterGetPrinterResolution(printer, tag, &res);
+    PMSetResolution((PMPageFormat) m_macPageFormat, &res);
+
     return true ;
 }
 
@@ -343,7 +350,11 @@ bool wxMacPrinter::Print(wxWindow *parent, wxPrintout *printout, bool prompt)
     // on the mac we have always pixels as addressing mode with 72 dpi
     
     printout->SetPPIScreen(72, 72);
-    printout->SetPPIPrinter(72, 72);
+    PMResolution res;
+    wxMacCarbonPrintData* nativeData = (wxMacCarbonPrintData*)
+          (m_printDialogData.GetPrintData().GetNativeData());
+    PMGetResolution((PMPageFormat) (nativeData->m_macPageFormat), &res);
+    printout->SetPPIPrinter(int(res.hRes), int(res.vRes));
     
     // Set printout parameters  
     printout->SetDC(dc);