diff options
author | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2020-03-03 15:59:26 +0100 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2020-03-07 11:54:42 +0100 |
commit | 79f25342cb70fc387453a946174b937c182ece8d (patch) | |
tree | 5a2e9e279e1da9d27cfa537b877897cac56db803 /src/core/type_conversion.cpp | |
parent | 902339d3a13c562418fb0a5193c31f74971f320d (diff) |
Handle new Skia formats toQImage
Only one is supported, but we do not expect to receive any of these
formats currently.
Change-Id: Ide782088bcf7ccd31e6af8eedf8b7bec2845c8d7
Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io>
Diffstat (limited to 'src/core/type_conversion.cpp')
-rw-r--r-- | src/core/type_conversion.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/core/type_conversion.cpp b/src/core/type_conversion.cpp index aea924dbd..403125784 100644 --- a/src/core/type_conversion.cpp +++ b/src/core/type_conversion.cpp @@ -59,6 +59,11 @@ QImage toQImage(const SkBitmap &bitmap) case kRGBA_F16_SkColorType: case kRGBA_F32_SkColorType: case kRGBA_F16Norm_SkColorType: + case kR8G8_unorm_SkColorType: + case kA16_float_SkColorType: + case kA16_unorm_SkColorType: + case kR16G16_float_SkColorType: + case kR16G16_unorm_SkColorType: qWarning("Unknown or unsupported skia image format"); break; case kAlpha_8_SkColorType: @@ -131,6 +136,21 @@ QImage toQImage(const SkBitmap &bitmap) case kGray_8_SkColorType: image = toQImage(bitmap, QImage::Format_Grayscale8); break; + case kR16G16B16A16_unorm_SkColorType: + switch (bitmap.alphaType()) { + case kUnknown_SkAlphaType: + break; + case kUnpremul_SkAlphaType: + image = toQImage(bitmap, QImage::Format_RGBA64); + break; + case kOpaque_SkAlphaType: + image = toQImage(bitmap, QImage::Format_RGBX64); + break; + case kPremul_SkAlphaType: + image = toQImage(bitmap, QImage::Format_RGBA64_Premultiplied); + break; + } + break; } return image; } |