Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.06.2008, 19:18   #1
OLEG'arh
Пользователь
 
Аватар для OLEG'arh
 
Регистрация: 23.11.2006
Сообщений: 42
Вопрос image. печать большого изображения на нескольких листах

я за раннее не знаю Width и Height

я хочу распечатать изображение на round(image1.Width/Х) страницах, где Х некий лимит (также и по Height)

допустим у меня большая "картинка" такая что займёт 6 листов по шрине(х) А4 и 3 по высоте(y), как это реализовать???
использую image.

на одном листе использую такой код


Код:
var   
    C: real;   
    R: TRect;   
begin   
   if printersetupdialog1.Execute then   
      begin   
        C:=Printer.PageWidth/image1.Width;   
        showmessage(inttostr(round(Printer.PageWidth)));   
        Printer.BeginDoc;   
        R := Rect(0, 0, round(image1.Width * C), round(image1.Height * C));   
        Printer.Canvas.CopyRect(R,image1.Canvas,image1.Canvas.ClipRect);   
        Printer.EndDoc;   
      end   
end;
P.S. изображением является большой график который рисует прога
OLEG'arh вне форума Ответить с цитированием
Старый 20.06.2008, 13:06   #2
Flenov
Форумчанин
 
Аватар для Flenov
 
Регистрация: 20.06.2008
Сообщений: 168
По умолчанию

Размеры страницы известная величина, а значит, ты можешь с помощью CopyRect скопировать размер

Rect(0, 0, Min(Printer.PageWidth, image1.Width), Min(image1.Height, Printer.PageHeight))

Теперь создаешь новую страницу (что-то типа Printer.StartPage) и на нее выводишь следующий отрывок картинки. Банальная математика.
Flenov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Чтение изображения из базы данных, Вместо изображения - "System.Byte[]" ruelCrow Общие вопросы .NET 3 10.07.2008 23:29
печать нескольких листов checkbox Microsoft Office Excel 2 16.01.2008 00:50
Прозрачность для нескольких цветов в Image SERG1980 Общие вопросы Delphi 3 11.05.2007 19:53
Печать изображения 1123 Общие вопросы Delphi 2 31.01.2007 20:45
Изменение размера изображения, Crop image to fit height & width loopy-need Общие вопросы Delphi 4 23.11.2006 10:23