Різні способи друку з додатків

[ виправити ] текст може містити помилки, будь ласка перевіряйте перш ніж використовувати.

скачати

У цій статті я постараюся розповісти Вам про самих зручних і поширених способах друку текстів і зображень з Ваших додатків. Друк використовується в додатках не так часто, от і виникають різні питання з цього приводу. Іноді буває необхідно "вивести на принтер" графік вийшла функції або звіт про діяльність фірми і т.д. Прочитавши цю статтю ви освоїте все найнеобхідніше для друку даних з Ваших додатків.

Отже, почнемо розгляд цих способів.

Друк за допомогою функцій файлового введення / виводу

Тут ми будемо використовувати найпростіші функції введення / виводу у файл, тільки зв'яжемо вихідний потік не з файлом, а з принтером. Розглянемо приклад друку тексту, що міститься в компоненті TEdit:

var P: TextFile;

begin

AssignPrn (P);

Rewrite (P);

Writeln (P, Edit1.text);

CloseFile (P);

End;

Тут ми оголошуємо змінну P типу TextFile. Процедура AssignPrn є різновидом процедури Assign. Вона налаштовує змінну P на порт принтера і дозволяє працювати з ним як з файлом. Rewrite відкриває порт для роботи, а WriteLn - виводить інформацію на друк. Важливо закрити порт принтера командою CloseFile!

Цей спосіб можна використовувати для роздруківки рядків списку або яких-небудь інших даних, по мірі їх надходження в програму.

Друк текстів у збагаченому форматі методом Print

Якщо Ви намагалися спробувати роздрукувати тексти з Вашого застосування, то, напевно, Вам відомо, що компонент TRichEdit має метод Print, що дозволяє друкувати текст, що зберігається в цьому компоненті. Цей метод має тільки один параметр - рядок, яка при перегляді в Windows черги друкованих завдань є ім'ям завдання. Наведу приклад використання (хоча він очевидний:)

RichEdit1.Print ('Print of our RichEdit1');

Слід зауважити, що печатка відтворює всі особливості форматування тексту, так само відбувається автоматичне перенесення рядків і розбиття тексту на сторінки. При цьому довжина рядків ні як не пов'язана з розмірами компонента RichEdit.

Друк за допомогою об'єкту Printer

У Дельфі є клас друкуючих об'єктів TPprinter, який забезпечує друк текстів, зображень та інших об'єктів, розташованих на його канві (Canvas).

Модуль Дельфі Printers, містить змінну Printer, яка є об'єктів типу TPrinter. Тому для використання цієї змінної у Ваших програмах, треба підключити модуль Printers в оператор Uses (на жаль автоматично цього не робиться)

Розглянемо докладніше деякі властивості і методи об'єкта TPrinter:

Властивість, метод Опис
Canvas Канва - місце в пам'яті, в якому формується сторінка або документ перед друком.
TextOut Метод канви, що дозволяє посилати в неї текст
BeginDoc Використовується для початку завдання друку
EndDoc Використовується для завершення завдання друку. При цьому печатка починається тільки після виклику цього методу!
PageHeight Повертає висоту сторінки в пікселах
NewPage Примусово починає нову сторінку
PageNumber Повертає номер друкованої сторінки

Наведу два приклади друку за допомогою об'єкту TPrinter тексту та зображення.

Друк тексту можна здійснити так:

Printer.BeginDoc;

Printer.Canvas.TextOut (10,10, 'Друкуємо за допомогою об'єкту Printer');

Printer.EndDoc;

Якщо Ви хочете надрукувати зображення, що знаходиться, наприклад, в компоненті Image1, то код може бути таким: Printer.BeginDoc;

with Image1.Picture.Bitmap do Printer.Canvas.CopyRect (Rect (0,0, Height, Width), Canvas, Rect (0,0, Height, Width));

Printer.EndDoc;

Здавалося і б і тут все просто, але в об'єкта Printer є істотний недолік: він не проводить автоматичне розбиття на рядки і сторінки, тому друкувати довгі тексти краще з допомогою компонента RichEdit або Memo.

Друк форм

У форм в Delphi є метод Print, який друкує всю клієнтську область форми. При цьому смуга заголовка і смуга головного меню форми не друкуються.

Властивість PrintScale визначає опції масштабування зображення форми при друці:

poNone Масштабування не використовується. Розмір зображення може змінюватися в залежності від принтера
poPrintToFit Робиться спроба надрукувати зображення форми того ж розміру, який видно на екрані
poProportional Збільшує або зменшує розмір зображення, підганяючи його під розмір сторінки.

На цьому ми закінчуємо огляд способів друку даних з Ваших додатків. Сподіваюся, що ще одним питанням у Вас стало менше:))

Список літератури

Михайло Хрістосенко. Різні способи друку з додатків

Додати в блог або на сайт

Цей текст може містити помилки.

Програмування, комп'ютери, інформатика і кібернетика | Доповідь
8.6кб. | скачати


Схожі роботи:
Способи одержання складних ефірів Конденсації формальдегіду з ізобутіленом Різні способи
Різні способи присутності за кордоном
Профілювальники додатків
Створення додатків на AJAX
Забезпечення продуктивності додатків
Робота з вікнами додатків
Засоби створення мультимедійних додатків
Вікна додатків в середовищі Windows
Психологічні способи впливу на партнера і етикетні способи захисту
© Усі права захищені
написати до нас