diff options
-rw-r--r-- | Source/WebCore/platform/graphics/qt/ImageBufferQt.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/Source/WebCore/platform/graphics/qt/ImageBufferQt.cpp b/Source/WebCore/platform/graphics/qt/ImageBufferQt.cpp index f8a929c3f..a796284c5 100644 --- a/Source/WebCore/platform/graphics/qt/ImageBufferQt.cpp +++ b/Source/WebCore/platform/graphics/qt/ImageBufferQt.cpp @@ -196,9 +196,12 @@ void ImageBuffer::putByteArray(Multiply multiplied, Uint8ClampedArray* source, c static bool encodeImage(const QPixmap& pixmap, const String& format, const double* quality, QByteArray& data) { - int compressionQuality = 100; - if (quality && *quality >= 0.0 && *quality <= 1.0) - compressionQuality = static_cast<int>(*quality * 100 + 0.5); + int compressionQuality = -1; + if (format == "jpeg" || format == "webp") { + compressionQuality = 100; + if (quality && *quality >= 0.0 && *quality <= 1.0) + compressionQuality = static_cast<int>(*quality * 100 + 0.5); + } QBuffer buffer(&data); buffer.open(QBuffer::WriteOnly); |