Форум: "Основная";
Текущий архив: 2002.11.04;
Скачать: [xml.tar.bz2];
ВнизНе работает печать Найти похожие ветки
← →
Weare (2002-10-24 17:43) [0]Уважаемые мастера, подскажите пожалуйста как можно при помощи стандартного объекта TPrinter вывести на печать рисунок в формате
TJpegImage в определленную область(Rect).
Вот два аналогичных кода программы, где печать рисунка в формате TBitMap проходит хорошо, а в формате TJpegImage выходит просто белый лист, причем ничего не ругается:
Bmp:= TBitMap.Create;
Bmp.LoadFromFile("konvert.jpg");
Printer.BeginDoc;
Printer.Canvas.StretchDraw(Rect(0,0,Printer.PageWidth,Printer.PageHeight),Bmp);
Printer.EndDoc;
Jpg:= TJpegImage.Create;
Jpg.LoadFromFile("konvert.jpg");
Printer.BeginDoc;
Printer.Canvas.StretchDraw(Rect(0,0,Printer.PageWidth,Printer.PageHeight),Jpg);
Printer.EndDoc;
Может это происходит из-за того, что у TJpegImage нету св-ва Canvas, но я же вывожу не на конву TJpegImage"а, а на конву принтера. Что подскажите, ведь мне для ускорения вывода на печать необходимо использовать TJpegImage, т.к файлы этого формата меньше по размеру?
← →
drpass (2002-10-24 18:03) [1]Ну сделай так:
Bmp:= TBitMap.Create;
Jpg:= TJpegImage.Create;
Jpg.LoadFromFile("konvert.jpg");
Bmp.Assign(jpg);
Printer.BeginDoc;
Printer.Canvas.StretchDraw(Rect(0,0,Printer.PageWidth,Printer.PageHeight),bmp);
Printer.EndDoc;
Но "ускорение вывода на печать" с помощью формата JPEG - это полнейший бред
← →
Weare (2002-10-24 18:11) [2]
> drpass ©
> Но "ускорение вывода на печать" с помощью формата JPEG -
> это полнейший бред
Почему? Ведь файл формата bmp занимает у меня 31Mb, а уже отконвертированный в jpg - 1.6Mb. Собствено поэтому и принтер долго "думает" перед отправкой на печать, разве не так или я что-то недопонимаю в процедуре вывода на печать.
Если не так объясни, плиз.
← →
777 (2002-10-24 18:24) [3]
> файл формата bmp занимает у меня 31Mb, а уже отконвертированный
> в jpg - 1.6Mb
jpg - грубо говоря сжатый bmp, только и всего, а
на принтер при печати bmp и при печати jpg выводится
одинаковое количество точек (масштаб -то изображения один),
к тому же при работе с jpg тратится время на распаковку.
← →
Weare (2002-10-25 10:21) [4]Спасибо за ответы, но может кто поскажет как же мне тогда увеличить скорость вывода на печать. Я сначала вывожу этот графический рисунок, а затем идет много (до 50) операторов Printer.Canvas.TextOut.
Printer.BeginDoc;
Printer.Canvas.StretchDraw(Rect(-60,-105,4847,6882),Bmp);
Printer.Canvas.TextOut(3600,665,Edit1.Text);
Printer.Canvas.TextOut(685,1000,Edit2.Text);
Printer.Canvas.TextOut(4272,995,Edit3.Text);
Printer.Canvas.TextOut(1805,1320,Edit4.Text); Printer.Canvas.TextOut(2565,1500,Edit5.Text);
...
Printer.EndDoc;
Может есть какой-то другой способ выводить все это на печать?
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.11.04;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.009 c