Nominate our 2022 Qt Champions!

Qt Widget vs Graphics View for drawing application

  • I have read several discussions about Qt Widget vs Graphics View but still cannot decide which one is better.
    More specifically, I am building a drawing software(similar to Pencil2D/Krita)- it will support pressure sensitivity, zoom, pan, playback etc.
    I looked at Pencil2D, Krita code. They are using QWidget. I am wondering why. I heard that if user need to interact with the objects frequently
    then Graphics View is better option. But also heard that GraphicsView framework does not use the GPU, and runs single-threaded only (exception: You could create the QImages in a separate thread).

    I am worried about performance- it needs to be fast as the user can try drawing fast in tablet and it should respond quickly. Also, the user should be able to zoom and draw in a fine scale.

  • Lifetime Qt Champion

    Well GraphicsView is very object oriented
    and support move and zoom out of the box and is perfect base for
    a vector type of diagramming tool.

    But for pure raster operations, like pixel drawing, its do not offer much and
    might not be the best base for photoshop type application.

    If you load the 40.000 sample, u will see that GraphicsView do has performance for
    the operations it does well.

    So for a raster pen drawing program, you might be more happy taking something like
    and transform into drawing app with zoom.

    But its just my opinion. All is possible with Qt so someone might have a good idea to make GraphicsView work well.

Log in to reply