Russian Qt Forum
Ноябрь 22, 2024, 17:43 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: [Qt:4.2.3]Печать с разбивкой по странично  (Прочитано 11552 раз)
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« : Июнь 12, 2007, 16:25 »

Добрый день.
Я переношу прогу с делфей на кутю. Прога делает справки, т.е. есть шаблоны справок, и прога, проставив в шаблоне нужные данные, выводит на печать. Под делфями я использовал текстовые шаблоны, теперь решил перейти на html (кстати, правильное ли решение?). Так вот в чем вопрос: справки имеют разное число строк(заранее это не известно), нужно печатать по несколько справок одновременно, причем справка не может разрываться на 2 листа, т.е. нужно вычислять поместится она или нужно прокрутить лист. В делфях было все легко и просто, а в куте никак не могу ничего придумать.
Буду рад любому ответу (особенно с примером кода).

С уважением.
Пантер.
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Racheengel
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2679


Я работал с дискетам 5.25 :(


Просмотр профиля
« Ответ #1 : Июнь 12, 2007, 22:57 »

Есть OpenReport для этого, поищи в гугле.
Записан

What is the 11 in the C++11? It’s the number of feet they glued to C++ trying to obtain a better octopus.

COVID не волк, в лес не уйдёт
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #2 : Июнь 13, 2007, 11:15 »

Цитата: "Racheengel"
Есть OpenReport для этого, поищи в гугле.

Я знаю про его существование, но пользоваться им не хочу, да и резона нет. Разве никто не может что-нибудь кроме этого посоветовать???
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
itan
Гость
« Ответ #3 : Июнь 14, 2007, 08:37 »

В QT ничего готового для этих целей пока не существует, правда есть примерчик ($QTDIR)/demos/textedit, в нем реализована функция Print Preview с последующим выводом на печать, думаю его можно доработать под твои нужды.
Записан
Sergey B.
Программист
*****
Offline Offline

Сообщений: 544



Просмотр профиля WWW
« Ответ #4 : Июнь 14, 2007, 08:42 »

Цитата: "itan"
В QT ничего готового для этих целей пока не существует, правда есть примерчик ($QTDIR)/demos/textedit, в нем реализована функция Print Preview с последующим выводом на печать, думаю его можно доработать под твои нужды.


QtextDocument прекрасно печатается, и сам разбивается на страницы (пробовал отправлять напрямую на принтер), то что в демке - это просто показ как он на принтер вылезет.

Единственное, не вставляй дополнительные фреймы с большим количеством данных, они не пилятся и вся разбивка ломается, т.е. линия таблицы или буквы могёт идти прям по линии страницы
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #5 : Июнь 14, 2007, 11:21 »

Цитата: "Sergey B."
Цитата: "itan"
В QT ничего готового для этих целей пока не существует, правда есть примерчик ($QTDIR)/demos/textedit, в нем реализована функция Print Preview с последующим выводом на печать, думаю его можно доработать под твои нужды.


QtextDocument прекрасно печатается, и сам разбивается на страницы (пробовал отправлять напрямую на принтер), то что в демке - это просто показ как он на принтер вылезет.

Единственное, не вставляй дополнительные фреймы с большим количеством данных, они не пилятся и вся разбивка ломается, т.е. линия таблицы или буквы могёт идти прям по линии страницы

Я и пользуюсь QtextDocument, загоняя в него html. Вопрос в другом: как узнать, что справка разрывается и перенести ее на другую страницу?
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Sergey B.
Программист
*****
Offline Offline

Сообщений: 544



Просмотр профиля WWW
« Ответ #6 : Июнь 14, 2007, 12:18 »

посмотри демку(которую предлагали), как они считают размер страницы... Улыбающийся...

При печати, страница разбивается автоматически... (с полями и прочими)
Записан
J. Bond
Гость
« Ответ #7 : Июнь 14, 2007, 12:34 »

Цитата: "panter_dsd"

Я и пользуюсь QtextDocument, загоняя в него html. Вопрос в другом: как узнать, что справка разрывается и перенести ее на другую страницу?


pageCount>1 ?
Записан
Ефремов
Гость
« Ответ #8 : Март 15, 2011, 11:09 »

Здравствуйте.

Подскажите, пожалуйста, как используя QTextDocument указать разрыв страницы?

Ефремов.
Записан
Prm
Гость
« Ответ #9 : Март 16, 2011, 12:19 »

см. описание setPageBreakPolicy
Записан
Ефремов
Гость
« Ответ #10 : Март 16, 2011, 19:17 »

Здравствуйте.

Prm

“см. описание setPageBreakPolicy
Большое спасибо за подсказку.
При заполнении методом .insertText() работает прекрасно. При заполнении методом .insertHtml() есть какие-то проблемы с разрывом страниц. Но до конца проверить пока не успел.
Еще раз большое спасибо!!!

Ефремов.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.054 секунд. Запросов: 23.