[Interest] Poor retina support for QGraphicsView on macOS?
Jean-Michaël Celerier
jeanmichael.celerier at gmail.com
Sun Oct 8 01:20:23 CEST 2017
> Can you suggest a sample size,
8 or 16 maybe ? I find 4 to be a bit pixelated.
> or perhaps give a code example?
QOpenGLWidget* w = new QOpenGLWidget;;
auto fmt = QSurfaceFormat::getDefaultFormat();
fmt.setSamples(16);
w->setFormat(fmt);
view.setViewport(w);
-------
Jean-Michaël Celerier
http://www.jcelerier.name
On Sat, Oct 7, 2017 at 7:36 PM, Patrick Stinson <patrickkidd at gmail.com>
wrote:
> Interesting. Can you suggest a sample size, or perhaps give a code
> example? I’m sure how this works. Thanks!
>
> On Oct 7, 2017, at 10:01 AM, Jean-Michaël Celerier <
> jeanmichael.celerier at gmail.com> wrote:
>
> > Don't do that and the anti-aliasing will work.
>
> Or alternatively enable GL antialiasing for instance by using
> QSurfaceFormat::setSamples (http://doc.qt.io/qt-5/
> qsurfaceformat.html#setSamples) and passing the format to your GL
> viewport. However this ends up being quite slow on retina display in my
> experience.
>
>
>
> -------
> Jean-Michaël Celerier
> http://www.jcelerier.name
>
> On Sat, Oct 7, 2017 at 10:09 AM, Christian Gagneraud <chgans at gmail.com>
> wrote:
>
>> On 7 October 2017 at 16:11, Patrick Stinson <patrickkidd at gmail.com>
>> wrote:
>> >
>> > Hello!
>> >
>> > I am seeing the antialiasing is still quite grainy using a
>> QGraphicsView on mac. Is it possible to increase the device pixel ratio, or
>> something similar?
>> >
>> > See attached screenshots, expanding to full rez before viewing. Note
>> smoothness of retina button pixmaps at left VS jagged lines in middle.
>> >
>> > I am using a QOpenGLWidget for the viewport (though this doesn’t seem
>> to matter):
>>
>> I vaguely remember that anti-aliasing doesn't work with an OpenGL view
>> (that was on a Linux machine).
>>
>> > view.setViewport(QOpenGLWidget())
>>
>> Don't do that and the anti-aliasing will work.
>>
>> Chris
>>
>>
>>
>> >
>> > I am painting QPainterPaths like this:
>> >
>> > def paint(self, painter, option, widget):
>> > painter.save()
>> > painter.setPen(self.pen)
>> > painter.setBrush(self.brush)
>> > painter.drawPath(self.path)
>> > painter.restore()
>> >
>> > with the following render hints:
>> >
>> > view.setRenderHints(QPainter.Antialiasing|QPainter.HighQuali
>> tyAntialiasing|QPainter.SmoothPixmapTransform|QPainter.TextAntialiasing)
>> >
>> > and the following attribute set on the QApplication:
>> >
>> > app.setAttribute(Qt.AA_UseHighDpiPixmaps, True)
>> >
>> > Thanks!
>> > -P
>> >
>> >
>> >
>> >
>> >
>> > _______________________________________________
>> > Interest mailing list
>> > Interest at qt-project.org
>> > http://lists.qt-project.org/mailman/listinfo/interest
>> >
>> _______________________________________________
>> Interest mailing list
>> Interest at qt-project.org
>> http://lists.qt-project.org/mailman/listinfo/interest
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20171008/63a25dfc/attachment.html>
More information about the Interest
mailing list