C++ 如何在QPixmap上应用黑色遮罩层?
我对Qt相当陌生,一直在做大量的阅读和练习。 我已经找了很多,但是我找不到任何例子 我有一个QPixmap对象,我将.png图像加载到该对象。 我需要创建一个应用了黑色遮罩的QPixmap副本 基本上,我希望这个QPixmap的图像覆盖一层纯黑,不透明度设置为50% 我知道如何设置QPixmap图像的不透明度,但如何添加一层带有不透明度的纯黑C++ 如何在QPixmap上应用黑色遮罩层?,c++,qt,pyqt,pyside,qpixmap,C++,Qt,Pyqt,Pyside,Qpixmap,我对Qt相当陌生,一直在做大量的阅读和练习。 我已经找了很多,但是我找不到任何例子 我有一个QPixmap对象,我将.png图像加载到该对象。 我需要创建一个应用了黑色遮罩的QPixmap副本 基本上,我希望这个QPixmap的图像覆盖一层纯黑,不透明度设置为50% 我知道如何设置QPixmap图像的不透明度,但如何添加一层带有不透明度的纯黑 谢谢大家! 您可以使用QPainter和半透明QBrush在QPixmap上绘制暗层 假设pic是与图像一起加载的QPixmap: QPainter p(
谢谢大家! 您可以使用
QPainter
和半透明QBrush
在QPixmap
上绘制暗层
假设pic
是与图像一起加载的QPixmap
:
QPainter p(&pic);
QBrush b(QColor(0,0,0,128)); // adjust color and alpha to taste
p.setBrush(b);
p.drawRect(0, 0, 200, 200);
影响(之前/之后):
vs
在绘画之前,可以通过设置半透明笔来去除不透明的黑色边框。如果要保留原始图像,请在应用“遮罩”之前复制pixmap