Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

QGraphicsSVGItem ignores (some) clipping paths. Why?



  • This SVG image is correctly rendered in Firefox and Inkscape, but for some reason, when using QGraphicsSVGItem without anything fancy, it renders this way:

    b7438226-8ead-4e81-b541-9888b03058e9-image.png

    For reference, this is what it looks like on firefox:

    83ecb93a-bfdf-45fc-b41c-5255655ae7e3-image.png

    As you can see, the back of the card is not supposed to go beyond the white border.

    Am I doing something wrong? Is there a (preferably easy) fix?

    A minimal working example, as you can see I am not doing anything fancy at all

    import sys
    from PyQt5 import QtWidgets, QtCore, Qt, QtGui
    
    app = QtWidgets.QApplication(sys.argv)
    
    scene = QtWidgets.QGraphicsScene()
    scene.addItem(Qt.QGraphicsSvgItem("back-red.svg"))
    
    graphics_view = QtWidgets.QGraphicsView()
    graphics_view.setScene(scene)
    graphics_view.show()
    
    sys.exit(app.exec())
    

Log in to reply