Yes, is. Stunning.
The xft image is RGB32 here, may depend on whether it's set to translucent (though there ARGB32 instead of pre-multiplied is used)
We need this patch tested on all possible GPUs (notably intel/sna!)
diff --git a/kcms/kfontinst/lib/FcEngine.cpp b/kcms/kfontinst/lib/FcEngine.cpp index 19b7206..6c731dc 100644 --- a/kcms/kfontinst/lib/FcEngine.cpp +++ b/kcms/kfontinst/lib/FcEngine.cpp @@ -537,7 +537,7 @@ QImage CFcEngine::Xft::toImage(int w, int h) const if (!xImage) { return QImage(); } - return QImage(xImage->data, xImage->width, xImage->height, xImage->stride, QImage::Format_ARGB32_Premultiplied, &cleanupXImage, xImage); + return QImage(xImage->data, xImage->width, xImage->height, xImage->stride, QImage::Format_RGB32, &cleanupXImage, xImage); }
inline int point2Pixel(int point)
Yes, is. Stunning.
The xft image is RGB32 here, may depend on whether it's set to translucent (though there ARGB32 instead of pre-multiplied is used)
We need this patch tested on all possible GPUs (notably intel/sna!)
diff --git a/kcms/ kfontinst/ lib/FcEngine. cpp b/kcms/ kfontinst/ lib/FcEngine. cpp kfontinst/ lib/FcEngine. cpp kfontinst/ lib/FcEngine. cpp :Xft::toImage( int w, int h) const xImage- >data, xImage->width, xImage->height, xImage->stride, QImage: :Format_ ARGB32_ Premultiplied, &cleanupXImage, xImage); xImage- >data, xImage->width, xImage->height, xImage->stride, QImage: :Format_ RGB32, &cleanupXImage, xImage);
index 19b7206..6c731dc 100644
--- a/kcms/
+++ b/kcms/
@@ -537,7 +537,7 @@ QImage CFcEngine:
if (!xImage) {
return QImage();
}
- return QImage(
+ return QImage(
}
inline int point2Pixel(int point)