我想将图标转换为灰度格式(向用户提供禁用操作反馈),如下所示:
inline QPixmap grayScaleImage(const QIcon &icon) {
int w = icon.availableSizes().at(0).width();
int h = icon.availableSizes().at(0).height();
QImage image = icon.pixmap(w, h).toImage();
image = image.convertToFormat(QImage::Format_Grayscale8);
image.save("Sample.PNG");
return QPixmap::fromImage(image);
}
但结果很糟糕,背景也转换为灰色:
那我该怎么办?