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

Вниз

Медленная печать на матричном принтере   Найти похожие ветки 

 
ndn ©   (2005-08-11 08:36) [0]

Здравствуйте, Уважаемые мастера!!!
У меня появилась проблема с печатью на матричном принтере. Принтер Ollivetti Pr2, - матричный, установлен как IBM proprinter II, Печать происходит из под винды. Необходимо напечатать печати (квадрат нарисованный линиями и текст внутри), все это печатается с помощью функций LineTo  и DrawText, но печать при этом происходит с очень медленной скорость, особенно вертикальные линии. Подскажите пожалуйста как ускорить вывод на печать. Пробовали ставить родные драйвера под винду, результат не изменился. Возможно ли использовать псевдографику для печати печатей и если да то как, желательно с примером (функция на входе берет координаты левого верхнего угла и печатает с этой позиции).


 
Leonid Troyanovsky ©   (2005-08-11 09:24) [1]


> ndn ©   (11.08.05 08:36)  

> II, Печать происходит из под винды. Необходимо напечатать
> печати (квадрат нарисованный линиями и текст внутри), все
> это печатается с помощью функций LineTo  и DrawText, но
> печать при этом происходит с очень медленной скорость, особенно
..
> результат не изменился. Возможно ли использовать псевдографику
> для печати печатей и если да то как, желательно с примером



Если оный принтер поддерживает ESC,
если на нем есть собс-ный шрифт, изображающий псевдографику,
и если качество получаемого изображения устроит,
то можно попробывать

PrintLineToGeneric( #27#112#0#20#80 );

where

Uses WinSpool;

Const
 GenericPrinter: Pchar = "Universal/Nur Text";
 // Change to systems generic drivers name or Epson printer name

Procedure PrintLineToGeneric(Const line: string );
Var
 BytesWritten: DWORD;
 hPrinter: THandle;
 DocInfo: TDocInfo1;
Begin
 If not WinSpool.OpenPrinter(GenericPr­inter, hPrinter, nil) Then
   raise exception.create("Printer not found");

 Try
   DocInfo.pDocName := "MyDocument";
   DocInfo.pOutputFile := Nil;
   DocInfo.pDatatype := "RAW";
   If StartDocPrinter(hPrinter, 1, @DocInfo) = 0 Then
     Abort;

   Try
     If not StartPagePrinter(hPrinter) Then
       Abort;
     try
       If not WritePrinter(hPrinter, @line[1], Length(line), BytesWritten)
       Then
         Abort;
     Finally
       EndPagePrinter(hPrinter);
     End;
   Finally
     EndDocPrinter(hPrinter);
   End;
 Finally
   WinSpool.ClosePrinter(hPrinter­);
 End;
End;

Peter Below (TeamB)  100113.1...@compuserve.com)

или Escape

http://groups-beta.google.com/group/fido7.ru.delphi.chainik/msg/c68e79b088787eab

--
Regards, LVT.



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

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

Наверх




Память: 0.47 MB
Время: 0.025 c
3-1125303576
Ольга
2005-08-29 12:19
2005.10.09
Как в T-SQL удалить IDENTITY у поля?


6-1118600263
integery
2005-06-12 22:17
2005.10.09
POP3 + ActiveX


4-1123739802
Tupoy
2005-08-11 09:56
2005.10.09
Ярлыки на рабочем столе


14-1127116268
Fay
2005-09-19 11:51
2005.10.09
Написание оптимального кода под Delphi


9-1117707275
WondeRu
2005-06-02 14:14
2005.10.09
OpenGL портит виндовские хинты! Как бороться?