![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Печать bmp переменной [D7, XP]
Lera © (2007-05-22 15:02:00)Доброго дня уважаемые! Скажите плиз как можно печатать bmp переменную без использования PrintDialog, а то эта компонента глючит - печатает через раз или ваще не печатает. Заранее спасибо.
Однокамушкин (2007-05-22 16:41:00) [1]Соседняя ветка на эту же тему...
http://www.delphimaster.ru/cgi-bin/forum.pl?id=1179734532&n=0
Lera (2007-05-22 16:02:00) [2]как же быть то теперь:(
Lera (2007-05-22 15:52:00) [3]а вы не могли бы хотя приблизительной код написать....плиз
Правильный Вася (2007-05-22 15:50:00) [4]
> то печатает, то нет.
то BMP в формате привычном, то в формате DIB
Lera (2007-05-22 15:45:00) [5]главное то печатает, то нет....сеня ваще никак...загадка
Правильный Вася (2007-05-22 15:44:00) [6]CLX canvases use device-dependent bitmaps to implement the Draw, StretchDraw, or CopyRect methods. Because of this, you can’t use these methods with most printers. Instead, to create graphic images on the printer’s canvas, create a device-independent bitmap and draw it directly to the canvas’s Handle property.
Lera (2007-05-22 15:41:00) [7]ни фурычит:(
Правильный Вася (2007-05-22 15:33:00) [8]а масштаб?
Darvin (2007-05-22 15:30:00) [9]попробуй
Printer.Canvas.stretchdraw(ImageRect,bmp_p);
канва еще есть у формы
Lera (2007-05-22 15:25:00) [10]Есть код:
-----------------------------
Bmp_p:=TBitmap.Create;
bmp_for_print;//готовит переменную bmp_p
if Fm_main.PrintDialog1.Execute then
with Printer do
begin
Orientation := poLandscape;
ImageRect.Top:=0;
ImageRect.Left:=0;
ImageRect.Right:=PageWidth;
ImageRect.Bottom:=PageHeight ;
begindoc;
Canvas.stretchdraw(ImageRect,bmp_p);
enddoc;
end;
bmp_p.SaveToFile(MainDir+'Map.bmp');//сохранение в файл
Bmp_p.free;
После выполнения кода по кнопке на форме принтре выдает пустой лист, в файле есть картинка....чудеса!!!
Lera (2007-05-22 15:12:00) [11]без ее помощи можно какнить напечатать?
Darvin (2007-05-22 15:12:00) [12]Можно с помощью TPrinter
Правильный Вася (2007-05-22 15:05:00) [13]> PrintDialog, а то эта компонента глючит - печатает через
> раз или ваще не печатает
эта компонента ваще не печатает ничего, это не ее функция