Большой архив статей, книг, документации по программированию, вебдизайну, компьютерной графике, сетям, операционным системам и многому другому
 
<Добавить в Избранное>    <Сделать стартовой>    <Реклама на сайте>    <Контакты>
  Главная Документация Программы Обои   Экспорт RSS E-Books
 
 

   Программирование -> Delphi / Pascal -> Введение в DELPHI


Печать текстовая и графическая

Содержание

Обзор

Печать в текстовом режиме

Вывод содержимого формы на печать

Графическая печать (объект TPrinter)

Пример

 

      1. Обзор

В данной статье рассказывается о возможных способах вывода информации на печать из программы, созданной в Delphi. Рассматривается вывод документа в текстовом режиме принтера, вывод графики с помощью объекта TPrinter и печать содержимого формы. О выводе на печать отчетов с помощью генератора отчетов ReportSmith рассказывается ниже.

 

      1. Печать в текстовом режиме

Если Вам нужно напечатать на принтере документ в текстовом режиме, то это делается следующим образом. С принтером Вы работаете, как с обычным текстовым файлом, за исключением того, что вместо процедуры AssignFile нужно вызывать процедуру AssignPrn. В примере на принтер выводится одна строка текста:

 

procedure TForm1.Button1Click(Sender: TObject);

var

To_Prn : TextFile;

begin

AssignPrn(To_Prn);

Rewrite(To_Prn);

Writeln(To_Prn, 'Printer in Text Mode');

CloseFile(To_Prn);

end;

 

Здесь необходимо, видимо, пояснить, что по сравнению с BP 7.0 в Delphi изменены названия некоторых функций и переменных в модуле System :

    • AssignFile вместо Assign
    • CloseFile вместо Close
    • TextFile вместо Text

 

      1. Вывод содержимого формы на печать

Иногда в программе требуется просто получить твердую копию экранной формы. В Delphi это делается более, чем просто - у объекта TForm есть метод Print, который и нужно вызвать в нужный момент.

 

      1. Графическая печать (объект TPrinter)

И все же, более интересно, как из программы созданной в Delphi можно вывести на печать графическую информацию. Для этого есть специальный объект Printer (класса TPrinter). Он становится доступен, если к программе подключить модуль Printers (т.е. добавить имя модуля в разделе uses ). С помощью этого объекта печать на принтере графической информации становится не сложнее вывода этой информации на экран. Основным является то, что Printer предоставляет разработчику свойство Canvas ( работа с канвой описана в предыдущем уроке) и методы, выводящие содержание канвы на принтер. Рассмотрим подробнее свойства и методы объекта Printer.

 

Свойства Printer:

Aborted - тип булевский; показывает, прервал ли пользователь работу принтера методом Abort.

Canvas - канва, место для вывода графики; работа с Canvas описана в Уроке 5.

Fonts - список доступных шрифтов.

Handle - используется при прямых вызовах Windows API.

Orientation - ориентация страницы, вертикально или горизонтально.

PageWidth, PageHeight, PageNumber - соответственно ширина, высота и номер страницы.

Printers перечисляет все установленные в системе принтеры, а

PrinterIndex указывает, какой из них является текущим. Чтобы печатать на принтере по умолчанию здесь должно быть значение -1.

Printing - тип булевский; показывает, начата ли печать (методом BeginDoc).

Title - заголовок для Print Manager и для заголовка перед выводом на сетевом принтере.

 

Методы Printer:

Abort - прерывает печать, начатую методом BeginDoc

BeginDoc - вызывается перед тем, как начать рисовать на канве.

EndDoc - вызывается когда все необходимое уже нарисовано на канве, принтер начинает печатать именно после этого метода.

NewPage - переход на новую страницу.

Остальными методами объекта в обычных случаях пользоваться не нужно.

Итак, порядок вывода на печать графической информации выглядит следующим образом:

  • выполняется метод BeginDoc
  • на канве (Canvas) рисуем все, что нужно
  • при необходимости разместить информацию на нескольких листах вызываем метод NewPage
  • посылаем нарисованное на принтер, выполняя метод EndDoc

      1. Пример

В примере (проект PRINTS.DPR, рис.1 ) реализованы все три вышеописанных ситуации.

 

 

 


к оглавлению

 

 

 
Интересное в сети
 
10 новых программ
CodeLobster PHP Edition 3.7.2
WinToFlash 0.7.0008
Free Video to Flash Converter 4.7.24
Total Commander v7.55
aTunes 2.0.1
Process Explorer v12.04
Backup42 v3.0
Predator 2.0.1
FastStone Image Viewer 4.1
Process Lasso 3.70.4
FastStone Image Viewer 4.0
Xion Audio Player 1.0.125
Notepad GNU v.2.2.8.7.7
K-Lite Codec Pack 5.3.0 Full


Наши сервисы
Рассылка новостей. Подпишитесь на рассылку сейчас и вы всегда будете в курсе последних событий в мире информационных технологий.
Новостные информеры. Поставьте наши информеры к себе и у вас на сайте появится дополнительный постоянно обновляемый раздел.
Добавление статей. Если вы являетесь автором статьи или обзора на тему ИТ присылайте материал нам, мы с удовольствием опубликуем его у себя на сайте.
Реклама на сайте. Размещая рекламу у нас, вы получите новых посетителей, которые могут стать вашими клиентами.
 
Это интересно
 

Copyright © CompDoc.Ru
При цитировании и перепечатке ссылка на www.compdoc.ru обязательна. Карта сайта.
 
Rambler's Top100