From bc1796ff5c34d3dfe0fb20026602bbe4e4aacfad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Morten=20Johan=20S=C3=B8rvig?= Date: Tue, 17 Mar 2015 13:05:03 +0100 Subject: Fix high-dpi scaledContents QLabel Scale to device pixel size. Change-Id: I9da089f1a3cafdc7f31f57cca504249b00508192 Task-number: QTBUG-42503 Reviewed-by: Timur Pocheptsov --- src/widgets/widgets/qlabel.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'src/widgets') diff --git a/src/widgets/widgets/qlabel.cpp b/src/widgets/widgets/qlabel.cpp index 09a1e7983a..83e94c4128 100644 --- a/src/widgets/widgets/qlabel.cpp +++ b/src/widgets/widgets/qlabel.cpp @@ -1080,7 +1080,10 @@ void QLabel::paintEvent(QPaintEvent *) if (!d->cachedimage) d->cachedimage = new QImage(d->pixmap->toImage()); delete d->scaledpixmap; - d->scaledpixmap = new QPixmap(QPixmap::fromImage(d->cachedimage->scaled(cr.size(),Qt::IgnoreAspectRatio,Qt::SmoothTransformation))); + QImage scaledImage = + d->cachedimage->scaled(cr.size() * devicePixelRatio(), + Qt::IgnoreAspectRatio, Qt::SmoothTransformation); + d->scaledpixmap = new QPixmap(QPixmap::fromImage(scaledImage)); } pix = *d->scaledpixmap; } else -- cgit v1.2.3