Класс TPrinter
|
Разговаривают два друга о компах, и разговор зашел про Билла Гейтса и его компе:
- Интересно, какая у Билла Гейтса видюха?
- Какая-нибудь Джи-Форс, последней модели...
- Хм, а какой у него камень? Пент 5-й?
- Такого еще не продают...
- А у него уже есть...
- Хе, и стоят у него Линуха!
|
Delphi имеет стандартный объект для доступа к принтеру - TPRINTER,
находящийся в модуле PRINTERS. В этом модуле имеется переменная
Printer:Tpinter, что избавляет от необходимости описывать свою. Он
позволяет выводить данные на печать и управлять процессом печати.
Правда, в некоторых версиях Delphi1 он имеет "глюк" - не работают
функции Draw и StrethDraw. Но эта проблема поправима - можно
использовать функции API. Далее приведены основные поля и методы
объекта Printers :
PROPERTY
- Aborted:boolean - Показывает, что процесс печати прерван
- Canvas:Tcanvas - Стандартный Canvas, как у любого графического объекта.
Он позволяет рисовать на листе бумаге графику, выводить текст ... . Тут
есть несколько особенностей, они описаны после описания объекта.
- Fonts:Tstrings - Возвращает список шрифтов, поддерживаемых принтером
- Handle:HDS - Получить Handle на принтер для использования функций API
(см. Далее)
- Orientation:TprinterOrientation - Ориентация листа при печати : (poPortrait,
poLandscape)
- PageHeight:integer - Высота листа в пикселах
- PageNumber:integer - Номер страницы, увеличивается на 1 при каждом
NewPage
- PageWidth:integer - Ширина листа в пикселах
- PrinterIndex:integer - Номер используемого принтера по списку доступных
принтеров Printers
- Printers:Tstrings - Список доступных принтеров
- Printing:boolean - Флаг, показывающий, что сейчас идет процесс печати
- Title:string - Имя документа или приложения. Под этим именем задание на
печать регистрируется в диспетчере печати
METODS
- AssignPrn(f:TextFile) - Связать текстовый файл с принтером. Далее вывод
информации в этот файл приводит к ее печати. Удобно в простейших
случаях.
- Abort - Сбросить печать
- BeginDoc - Начать печать
- NewPage - Начать новую страницу
- EndDoc - Завершить печать.
Пример :
Procedure TForm1.Button1Click(Sender: TObject);
Begin
With Printer do Begin
// Начало печати
BeginDoc;
// Задали шрифт
Canvas.Font:=label1.font;
// Печатаем текст
Canvas.TextOut(100,100,'Delphi World - лучше всех !!! :) ');
// Конец печати
EndDoc;
end;
end;
|
|