1
A
回答
6
这可以通过很多方式完成。我建议使用QPainter
来创建新图像。如果您设置了SourceIn
合成模式,则起始图像的Alpha通道将应用于您将执行的任何绘制。你只需要用想要的颜色填充图像。
QPixmap source_image; // should be preserved in a class member variable
QRgb base_color; // desired image color
QPixmap new_image = source_image;
QPainter painter(&new_image);
painter.setCompositionMode(QPainter::CompositionMode_SourceIn);
painter.fillRect(new_image.rect(), base_color);
painter.end();
ui->label->setPixmap(new_image); // showing result
请注意,我用QPixmap
代替QImage
因为QPixmap
s为更有效地显示(也可能是油漆)。如果您由于某种原因仍想使用QImage
,则此代码将与QImage
一起使用,不做任何更改(当然不包括最后一行)。
图片来源: 结果:
相关问题
- 1. 如何在iOS中更改部分透明图像的颜色?
- 2. 改变透明图像颜色动态
- 3. 如何在图像中将颜色更改为透明
- 4. Qt不透明颜色刷?
- 5. 在背景颜色前悬停更改透明背景图像
- 6. 更改位图背景图像/颜色,还是使其透明?
- 7. QT中的透明图像
- 8. 试图改变图像中的透明部分的颜色
- 9. 透明像素颜色 - 去朗图像
- 10. 如何更改透明PNG图像颜色?
- 11. 在透明背景的单色PNG图像上更改/覆盖颜色?
- 12. css透明图像的背景颜色
- 13. 更改java中透明像素的颜色
- 14. Imagick。将颜色更改为透明
- 15. 将UINavigationBar更改为透明颜色
- 16. 透明图像顶部颜色
- 17. 透明图像 - 背景颜色
- 18. 核心图像 - 颜色切换透明
- 19. 使用透明颜色旋转图像
- 20. 更改图像的颜色
- 21. 更改图像的颜色
- 22. 更改翻转或使用图像地图的div的颜色/透明度
- 23. 在php中更改图像的颜色?
- 24. ImageMagick - 通过颜色透明图像透明
- 25. 如何将UIImage中的颜色“白色”更改为透明
- 26. 如何在CSS中更改背景颜色的不透明度
- 27. Android ActionBar(Sherlock) - 更改菜单图标的颜色/透明度
- 28. 更改ImagePlus图像颜色
- 29. 更改图像颜色
- 30. Java更改图像颜色
有2幅图像,并将它们 –
之间交换但我要的颜色设置不同的范围。它不需要是固定的颜色。如果是这种情况,那么可以做些什么? – Sid411
“改变颜色”是什么意思? – Mitch