summaryrefslogtreecommitdiff
path: root/src/drivers/Quartz
diff options
context:
space:
mode:
Diffstat (limited to 'src/drivers/Quartz')
-rw-r--r--src/drivers/Quartz/Fl_Quartz_Copy_Surface_Driver.cxx7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/drivers/Quartz/Fl_Quartz_Copy_Surface_Driver.cxx b/src/drivers/Quartz/Fl_Quartz_Copy_Surface_Driver.cxx
index 0933a4aa0..401fd1daf 100644
--- a/src/drivers/Quartz/Fl_Quartz_Copy_Surface_Driver.cxx
+++ b/src/drivers/Quartz/Fl_Quartz_Copy_Surface_Driver.cxx
@@ -50,13 +50,14 @@ Fl_Quartz_Copy_Surface_Driver::Fl_Quartz_Copy_Surface_Driver(int w, int h) : Fl_
static CGDataConsumerCallbacks callbacks = { Fl_Quartz_Copy_Surface_Driver::MyPutBytes, NULL };
myconsumer = CGDataConsumerCreate((void*) pdfdata, &callbacks);
}
- CGRect bounds = CGRectMake(0, 0, w, h );
+ float d = fl_graphics_driver->scale();
+ CGRect bounds = CGRectMake(0, 0, w * d, h * d);
gc = CGPDFContextCreate(myconsumer, &bounds, NULL);
CGDataConsumerRelease(myconsumer);
if (gc) {
CGContextBeginPage(gc, &bounds);
- CGContextTranslateCTM(gc, 0.5, h-0.5);
- CGContextScaleCTM(gc, 1.0f, -1.0f);
+ CGContextScaleCTM(gc, d, -d);
+ CGContextTranslateCTM(gc, 0.5, -h + 0.5);
CGContextSaveGState(gc);
}
}