Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Текстовая печать [D5, Win95/98, WinME, Win2k, WinXP]


MVova ©   (2002-06-06 16:50:00) 

Всем привет.

Есть текст в TStringList как отправить его на печать в текстовом режиме (принтер матричный).

Спасибо.


MVova   (2002-06-06 19:51:00) [1]

Спасибо. Буду пробовать.


Song   (2002-06-06 19:34:00) [2]

См. AssignPrn()
Печать будет вестись на текуще выбранный принтер. Исходник будет на порядок легче чем в предыдущм ответе.
Вообще способов много. Я бы сказал печать через устройство prn это самый последний способ что можно применить.


Fiend   (2002-06-06 17:57:00) [3]

тоже не проблема
делаем так:


function TForm3.PrintReport:boolean;
var s,s1,s2,s3: PChar;
devm:THandle;
printername:string;
StringNo:integer;
begin
try
if GraphicPrint=false then begin
PreviewProc.Filtered:=false;
DataSource1.Enabled:=false;
{Printer.BeginDoc;}
s:=AllocMem(255);
s1:=Allocmem(255);
s2:=allocmem(255);
s3:=allocmem(255);
Printer.GetPrinter(s1,s2,s3,devm);
if pos("\\",s1)=0 then printername:="LPT1" else printername:=s1;
AssignFile ( f, printername );
Rewrite ( f );
PreviewProc.First;
while PreviewProc.EOF=false do begin
CharToOEM(PChar(PreviewProc.FieldByName("output").text),s);
WriteLn ( f, s);
PreviewProc.Next;
end;
CloseFile ( f );
FreeMem(s);
freemem(s1);
freemem(s2);
freemem(s3);
{Printer.EndDoc;}
end

Эта фишка сама определяет куда и как печатать.

это еще не конец хвункции, но там есть то что тебе надо
извини за кривость текста, написано триста лет назад.


MVova   (2002-06-06 17:49:00) [4]

А если он сетевой?


Fiend   (2002-06-06 17:04:00) [5]

Открой Lpt1 и печатай в него, всё будет ок


Наверх

Титульная страница Поиск, карта сайта Написать письмо