![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы
![]() |
Поиск в этой теме
![]() |
![]() |
#1 |
Регистрация: 14.03.2007
Сообщений: 6
|
![]()
На главной форме проекта лежит Image. На канве этого Image рисуется большая схема + графиков несколько + и т.д. … чего там только нет. Мне надо все это распечатать. Всю канву Image.
Беда в том, что Image большой, размеры его меняются в зависимости от выполняемых в программе расчетов и выводимой графики. Вот, например, последний раз после расчетов размер Image получился как два листа формата А3, иногда меньше бывает, иногда больше (такова уж задача, причем давно делалась, и копаться в ней уже не хочется, надо вот только печать организовать). Устроит печать на нескольких листах А4 (или А3), которые я потом буду склеивать. Пробовал организовать печать с использованием QuickRep. Не получилось. Делал все так: - к проекту добавил еще одну форму – форму для печати (Form_PRINT) - на эту новую форму положил QuickRep - на QuickRep положил QRBand - на QRBand положил QRImage - на главной форме (где лежит Image, содержимое которого надо распечатать) добавил кнопку «Печать». В обработчике кнопки написал: with Form_PRINT do begin QRImage1.Width:=Image1.Width; QRImage1.Height:=Image1.Height; QRImage1.Picture.Assign(Image1.Pict ure); QuickRep1.Preview; End; В результате получается только одна страница на которой лишь кусок того, что надо распечатать (того, что имеется на Image). Не пойму, почему автоматически не добавляются еще страницы и не выводится весь рисунок. Может свойства какие у компонентов надо настроить? Или я вообще тупиковой работой занимаюсь и надо искать другой подход к распечатыванию, а не связываться с QuickRep? Блин… может Word (или Excel) запустить, да туда через буфер как картинку вставить…, но я не умею…Хм, а было бы не плохо, наверное…и на печать легко вывести. Может кто подскажет, а лучше кода кусок киньте, чтоб тупить меньше. Надо не для забавы, а по работе. |
![]() |
![]() |
![]() |
#2 |
добрый няша
Старожил
Регистрация: 29.10.2006
Сообщений: 4,804
|
![]()
тааак, где модератор?
есть такой класс tprinter у него есть свой канвас, вызываешь метод BeginDoc рисуешь в его канвасе рисунок и вызываешь метод EndDoc, после вызова метода EndDoc принтер печатает канвас, в общем, в справке delphi есть такой класс,посмотри Последний раз редактировалось rpy3uH; 15.03.2007 в 20:16. |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как сделать, что бы распечатать??? | slim-vm | Microsoft Office Excel | 2 | 19.03.2007 06:01 |