Qt - печатать виджеты в определенном макете

В моем проекте у меня есть несколько собственных виджетов. Когда я нажимаю на кнопку панели инструментов для печати, я хочу напечатать виджеты в определенном макете (альбомная ориентация).

Я попробовал это с новым QWidget с макетом, и в этот макет добавить мои виджеты. Но когда я это делаю, мой виджет исчезает из главного окна.

Как я могу распечатать свой виджет без исчезновения и свой собственный макет?

1 ответ

Решение

Я спросил что-то похожее - печать сложных виджетов

и в основном оказался в некотором дизайне, где я установил невидимую копию всего виджета и заставил его изменить размер до наилучшего размера для задания на печать - примите во внимание портретную и альбомную печать!

Мне пришлось добавить код в методы рисования и изменения размера моих пользовательских виджетов, где в зависимости от того, печатал ли я или рисовал на экране, я изменял палитры, размеры шрифтов, таблицы стилей и т. Д. Модификация палитр может потребоваться, если ваш принтер черный / только белый. Или, если ваше приложение имеет темный фон, вы можете изменить цвета.

Это была довольно утомительная работа, но вы заметите, что клиенты часто не хотят печатать на экране, а что-то лучше.

Другие вопросы по тегам