Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.04.18;
Скачать: CL | DM;

Вниз

термо-принтер   Найти похожие ветки 

 
МАРАТ   (2002-01-23 09:27) [0]

Мастера!
У меня такой вопрос, у меня есть рисунок (созддается в процессе программы) на компоненте Image1 и т.д., как мне его послать на печать (термо-принтер BZB-2).


 
Фэ ©   (2002-01-23 10:54) [1]

Printer.BeginDoc;
DrawImage(Printer.Canvas, Rect(0, 0, printer.pagewidth, printer.pageHeight), Image1.Picture.Bitmap);
Printer.EndDoc;

Для сохранения пропорций надо вычислить правильные width и height.
Если у термопринтера есть драйвер под Win - то все в порядке.
Если нет, то придется разлагать картинку по линиям и посылать raw-поток на принтер в соответствии с его системой команд.


 
МАРАТ   (2002-01-23 12:10) [2]

Фэ !
Дельфи ругается что неопределен
DrawImage


 
Фэ ©   (2002-01-23 15:04) [3]

Правильно делает, что ругается.

Определи его вот так

procedure DrawImage(Canvas: TCanvas; DestRect: TRect; ABitmap: TBitmap);
var
Header, Bits: Pointer;
HeaderSize: Integer;
BitsSize: Longint;
begin
GetDIBSizes(ABitmap.Handle, HeaderSize, BitsSize);
Header := MemAlloc(HeaderSize);
Bits := MemAlloc(BitsSize);
try
GetDIB(ABitmap.Handle, ABitmap.Palette, Header^, Bits^);
StretchDIBits(Canvas.Handle, DestRect.Left, DestRect.Top,
DestRect.Right, DestRect.Bottom,
0, 0, ABitmap.Width, ABitmap.Height, Bits, TBitmapInfo(Header^),
DIB_RGB_COLORS, SRCCOPY);
finally
MemFree(Header, HeaderSize);
MemFree(Bits, BitsSize);
end;
end;



Страницы: 1 вся ветка

Текущий архив: 2002.04.18;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.011 c
14-57879
Alx2
2002-03-12 11:37
2002.04.18
Congratulations toVuDZ!


6-57832
Song
2002-01-28 14:11
2002.04.18
Я никогда не программировал сокеты, объясните мне одну простейшую вещь...


1-57727
новенький в Делфи
2002-04-07 22:22
2002.04.18
Закрытие формы


1-57749
vadim2
2002-04-05 11:24
2002.04.18
а как узнать что drag&drop успешно выполнилось? например:


1-57816
DenKop
2002-04-05 22:52
2002.04.18
Форма поверх всех окон.