Qt,C++ Проблема с QPainter

Суть в том что я хочу обрезать с помощью QPainter::CompositionMode часть исходного изображения(сделать прозрачной эту часть) но при применении мода(разных его вариаций) я всегда получаю или полный черный экран или частично черный как на скрине. Как убрать эту черную заливку и сделать ее прозрачной?

#include "mainwindow.h"

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent)
{
    this->resize(700,500);

  sourceImage=new QImage("./texture/ball.png");
  destinationImage=new QImage("./texture/mask1.png");
}

void MainWindow::paintEvent(QPaintEvent *e) {

  Q_UNUSED(e);

  doPainting();
}

void MainWindow::doPainting() {
    
    QPainter *painter =new QPainter(this);
   
   painter->drawImage(QRectF(0,150,200,200),*sourceImage);
   painter->drawImage(QRectF(500,150,200,200),*destinationImage);


   painter->drawImage(QRectF(250,150,200,200),*sourceImage);
   painter->setCompositionMode(QPainter::CompositionMode_Xor);
   painter->drawImage(QRectF(250,150,200,200),*destinationImage);
   
}

Результат


Ответы (0 шт):