我正在尝试在我的项目中使用Qt 5.5.1 QGraphicsBlurEffect
,但无法在Mac上使用它:
我尝试使用PerformanceHint
,QualityHint
或AnimationHint
进行更改,但未成功。使用QGraphicsColorizeEffect
我遇到了同样的问题,而QGraphicsOpacityEffect
和QGraphicsDropShadowEffect
以及Linux上的所有内容都完美无缺:
如何更改项目文件或代码以使图形问题消失?它甚至可能吗?
TEMPLATE = app
TARGET = main
QT += widgets
SOURCES += main.cpp
#include <QtWidgets>
int main(int argc, char **argv)
{
QApplication app(argc, argv);
QMainWindow window;
QTextEdit *text = new QTextEdit;
text->setReadOnly(true);
QVBoxLayout *layout = new QVBoxLayout;
layout->addWidget(text);
QWidget *widget = new QWidget;
widget->setLayout(layout);
QGraphicsBlurEffect effect;
effect.setBlurRadius(3);
QLabel *test = new QLabel("TEST");
test->setGraphicsEffect(&effect);
(new QHBoxLayout(text))->addWidget(test, 0, Qt::AlignCenter);
window.setCentralWidget(widget);
window.show();
return app.exec();
}
答案 0 :(得分:1)
QGraphicsOpacityEffect
我遇到了类似的问题:模糊文字和图标必须清晰锐利。好像是Qt中的一个错误。我的解决方案是编写我自己的小类,其中包含我需要的所有内容以及正确的渲染。
好吧,你可以尝试修复Qt ...祝你好运阅读图形效果的源代码。所有它的dpr和转换矩阵以及渲染子窗口小部件都非常复杂。