diff options
author | Shawn Rutledge <shawn.rutledge@qt.io> | 2020-01-02 16:24:23 +0100 |
---|---|---|
committer | Shawn Rutledge <shawn.rutledge@qt.io> | 2020-01-23 21:25:35 +0100 |
commit | 04e855d5e2639be8acd91f4a581f1500a2908282 (patch) | |
tree | 6293b9972e7c5811593ac87a601c6ef3ac4d49c0 /src/quick/util/qquickimageprovider.cpp | |
parent | 64b4211a3c8a037a4f2e6dae71ed65066aca8bea (diff) |
QQuickImageProvider: PDF is a scalable format like SVG
We could perhaps determine this by asking the QImageReader in
readImage(), but supportsOption(ScaledSize) might return true
for some other non-scalable formats.
Change-Id: Ia18e9245c408245933774520ab68655905251e4d
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Diffstat (limited to 'src/quick/util/qquickimageprovider.cpp')
-rw-r--r-- | src/quick/util/qquickimageprovider.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/quick/util/qquickimageprovider.cpp b/src/quick/util/qquickimageprovider.cpp index c081d45268..db82b2d807 100644 --- a/src/quick/util/qquickimageprovider.cpp +++ b/src/quick/util/qquickimageprovider.cpp @@ -672,17 +672,17 @@ QSize QQuickImageProviderWithOptions::loadSize(const QSize &originalSize, const return res; const bool preserveAspectCropOrFit = options.preserveAspectRatioCrop() || options.preserveAspectRatioFit(); - const bool formatIsSvg = (format == "svg" || format == "svgz"); + const bool formatIsScalable = (format == "svg" || format == "svgz" || format == "pdf"); - if (!preserveAspectCropOrFit && formatIsSvg && !requestedSize.isEmpty()) + if (!preserveAspectCropOrFit && formatIsScalable && !requestedSize.isEmpty()) return requestedSize; qreal ratio = 0.0; - if (requestedSize.width() && (preserveAspectCropOrFit || formatIsSvg || + if (requestedSize.width() && (preserveAspectCropOrFit || formatIsScalable || requestedSize.width() < originalSize.width())) { ratio = qreal(requestedSize.width()) / originalSize.width(); } - if (requestedSize.height() && (preserveAspectCropOrFit || formatIsSvg || + if (requestedSize.height() && (preserveAspectCropOrFit || formatIsScalable || requestedSize.height() < originalSize.height())) { qreal hr = qreal(requestedSize.height()) / originalSize.height(); if (ratio == 0.0) |