From db7bb6cd9854804a9733812d82559284c2b2dc43 Mon Sep 17 00:00:00 2001 From: ManoloFLTK <41016272+ManoloFLTK@users.noreply.github.com> Date: Thu, 5 Aug 2021 19:20:53 +0200 Subject: Have Fl_Quartz_Copy_Surface_Driver account for current display scaling factor. --- src/drivers/Quartz/Fl_Quartz_Copy_Surface_Driver.cxx | 7 ++++--- 1 file 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); } } -- cgit v1.2.3