referring to this article
<https://forum.qt.io/topic/5327/how-to-use-semi-transparent-qpixmaps-as-textures>,
i see someone else has also run into this, but did not get a satisfactory
answer.
I am implementing what on macOS Carbon is known as a "transparency layer", that
is, you begin a transparency context, do your drawing (with transparency),
finish your context, then blit the contents of that context as a whole with a
specified transparency (this is to achieve "fade away" via animation).
When i use QWidget, my stroked paths (text) look creamy smooth along the edges,
as if everything is in fact being handled as straight alpha:
However, if i switch to using QOpenGLWidget, my stroked paths appear to have a
crusty border, as if they were drawn with premul-over-black alpha:
No other code changes except swapping QOpenGLWidget for QWidget.
Does this seem... unexpected? Note if i attempt to manually unmultiply, things
look much worse, so i don't think it's PRECISELY a premul thing. (and i know my
manual unmultiply works because unit tests)
(Ignore for now the fact that it's white-on-white, i know that, i'm NOT drawing
the black text behind the stroke to more clearly illustrate the halo around the
strokes)
-dave
_______________________________________________
Interest mailing list
Interest@qt-project.org
https://lists.qt-project.org/listinfo/interest