Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: QPainter после print
Форум на CrossPlatform.RU > Библиотеки > Qt > Qt Система рисования. Печать
RazrFalcon
Пример:
QPrinter *printer = new QPrinter();
QTextDocument *doc = new QTextDocument(this);
doc->setHtml(myhtml);
doc->print(printer);

QPainter painter;
painter.begin(printer);
QImage image;
image.load("img.png");
painter.drawImage(0, 0, image);
painter.end();

Затем все это идет в QPrintPreviewWidget.
Проблема в том, что отображается только img.png, html-текста нету. Если закоментировать рисование картинки - все нормально, текст есть.
Как нарисовать изображение поверх текста сгенерированного через print?
ilyabvt
Если картинка без альфа канала, то возможно она его просто перекрывает. А если рисовать текст через QPainter то он виден?
RazrFalcon
Нет. Картинка с альфой.

Решил так:
QPainter painter;
painter.begin(printer);
QImage image;
image.load("img.png");
painter.drawImage(0, 0, image);
doc->drawContents(&painter); // <--
painter.end();
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.