我正在使用格式为_ARGB32的QImage。我必须将一些像素设置为透明,一些像素设置为不透明。所以,我使用了这一行:
Image.setPixel(x,y,QColor(r,g,b,0).rgba());
将像素设置为透明。我甚至试过这个:
Image.setPixel(x,y,qRgba(r,g,b,0));
仍然没有任何反应。只需在设置之后,当我再次打印像素时,使用:
qDebug() << "Color : " << QColor::fromRgba(Image.pixel(x,y));
我总是将alpha通道的值设为1。 即使我保存图像,我也没有获得透明度。我如何解决它?
答案 0 :(得分:3)
确保图像格式支持透明度。也许首先你需要打电话
Image = Image.convertToFormat(QImage::Format_ARGB32); // or maybe other format