透明背景绘图 html
Drawing html with transparent background
我目前正在尝试将 QTextEdit 的 HTML 格式文本绘制到具有透明背景的 QPixmap , 将其用作另一个小部件的叠加层。
我的第一次尝试是使用 QTextEdit 的 QTextDocument 并使用 drawContents() 将其绘制到 QPixmap.
作为第二次尝试,我将 HTML 传递给 QStaticText 并将其绘制到我的 QPixmap,使用QPainter.
两种方法都按预期绘制最终文本,但是,QPixmap 的背景始终为灰色。同时将样式表中 QTextEdit 的背景色设置为透明也不会改变。
有什么办法可以让背景变透明吗?
显然,经过更多研究,我找到了解决方案。
我的 QPixmap 根本不透明,甚至在渲染文本之前也是如此。我遇到了 this blog post,其中 QPainter 的合成模式设置为 CompositionMode_Source 使用对 setCompositionMode().
我目前正在尝试将 QTextEdit 的 HTML 格式文本绘制到具有透明背景的 QPixmap , 将其用作另一个小部件的叠加层。
我的第一次尝试是使用 QTextEdit 的 QTextDocument 并使用 drawContents() 将其绘制到 QPixmap.
作为第二次尝试,我将 HTML 传递给 QStaticText 并将其绘制到我的 QPixmap,使用QPainter.
两种方法都按预期绘制最终文本,但是,QPixmap 的背景始终为灰色。同时将样式表中 QTextEdit 的背景色设置为透明也不会改变。
有什么办法可以让背景变透明吗?
显然,经过更多研究,我找到了解决方案。
我的 QPixmap 根本不透明,甚至在渲染文本之前也是如此。我遇到了 this blog post,其中 QPainter 的合成模式设置为 CompositionMode_Source 使用对 setCompositionMode().