Индивидуальные очистные сооружения: К классу индивидуальных очистных сооружений относят сооружения, пропускная способность которых...
Двойное оплодотворение у цветковых растений: Оплодотворение - это процесс слияния мужской и женской половых клеток с образованием зиготы...
Топ:
Генеалогическое древо Султанов Османской империи: Османские правители, вначале, будучи еще бейлербеями Анатолии, женились на дочерях византийских императоров...
Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов...
Техника безопасности при работе на пароконвектомате: К обслуживанию пароконвектомата допускаются лица, прошедшие технический минимум по эксплуатации оборудования...
Интересное:
Уполаживание и террасирование склонов: Если глубина оврага более 5 м необходимо устройство берм. Варианты использования оврагов для градостроительных целей...
Распространение рака на другие отдаленные от желудка органы: Характерных симптомов рака желудка не существует. Выраженные симптомы появляются, когда опухоль...
Аура как энергетическое поле: многослойную ауру человека можно представить себе подобным...
Дисциплины:
2017-06-02 | 275 |
5.00
из
|
Заказать работу |
Содержание книги
Поиск на нашем сайте
|
|
Ниже показано, как использовать свойство Orientation для переключения режимов вывода информации на устройство печати.
procedure TForm1.PortraitClick(Sender: TObject);
begin
Printer.Orientation:= poPortrait;
(Вывод вертикально}
end;
procedure TForm1.LandscapeClick(Sender: TObject);
begin
Printer.Orientation:= poLandscape;
{Вывод горизонтально}
end;
Базовые операции с принтером
Ниже показан набор базовых операций, необходимых для вывода информации на устройство печати. Сначала вызывается метод BeginDoc. Затем с помощью метода TextOut принтерного контекста (Canvas) выводится информация, а ее непосредственная распечатка начинается после вызова метода EndDoc:
Begin
Printer.BeginDoc;
{/////////////////
{
Здесь происходит вывод информации на принтер, например, с помощью вызова Printer.Canvas.TextOut(X, Y, ' ');
}
/////////////////}
{Сообщить пользователю}
Label1.Caption:= 'Printing page ' + IntToStr(Printer.PageNumber);
Printer.NewPage; {Новая страница}
Printer.EndDoc; {Начать печать}
End;
Ниже показано, как вывести на принтер графическое изображение:
Begin
Printer.BeginDoc; {Начнем вывод информации }
Printer.Canvas.Rectangle(10, 10, 200, 200);{Нарисуем прямоугольник }
Printer.EndDoc; {Начнем печать }
End;
Вывод текстовой информации
В приведенном ниже примере показано, как вывести на устройство печати содержимое редактора (класс типа ТМето). Для этого мы воспользуемся рядом процедур, определенных в модуле Printers. Сначала ассоциируем значение текстовой переменной с принтером. Для этого используется процедура AssignPrn. Например:
Var
TextToPrint: System.Text; {}
..............
AssignPrn(TextToPrint); {Ассоциировать с принтером)
Rewrite(TextToPrint);{Открыть файл}
Отметим, что с принтером может быть ассоциирована только одна текстовая переменная. Попытка ассоциации второй текстовой переменной приведет к возникновению ошибки.
|
После этого вызов стандартных процедур Write и Writeln приведет к выводу текста на устройство печати (точнее, в принтерный контекст, определенный свойством Canvas). Вывод содержимого редактора осуществляется с помощью стандартной процедуры Writeln:
For Line:= 0 to Memo1.Lines.Count-1 do
Writeln(TextToPrint, Memo.Lines[Line])
После того как вывод информации завершен, необходимовызвать стандартную процедуру Close:
System.Close(TextToPrint)
Этот вызов эквивалентен вызову Printer.EndDoc.
Для того чтобы текст на устройстве печати печатался тем же шрифтом, что используется для его отображения в редакторе, перед выводом информации на принтер необходимо выполнить следующее присваивание:
Printer. Canvas. Font: = Memo1.Font;
Примечание. Для вывода текстовой информации можно также воспользоваться методом TextOut принтерного контекста (Canvas), который является «оболочкой» стандартной функции Windows API TextOut за тем исключением, что вам не требуется указывать в качестве первого параметра контекст — им служит компонент Canvas, и указывать число символов в строке:
procedure Canvas.TextOut(X, Y: Integer; const Text: string);
function GDI.TextOut(DC: HDC; X, Y: Integer; Str: PChar; Count: Integer):
Bool;
Использование стандартных диалоговых панелей
Delphi содержит компоненты, реализующие две стандартные для Windows 3.1 диалоговые панели, связанные с выводом информации на устройство печати. Это — компоненты для управления страницами PrintDialog и для настройки параметров принтера PrinterSetupDialog, расположенные в панели компонентов на странице Dialogs (рис. 74).
Рис. 74. Диалоговая панель PrintDialog
Компонент PrintDialog
Этот компонент используется для задания ряда характеристик при выводе информации на устройство печати — диапазон выводимых страниц, начальную и конечную страницу, качество печати (число точек на дюйм), возможность печати в файл и число копий. Ниже рассматривается ряд свойств этого компонента.
Рис. 75. Диалоговая панель PrinterSetupDialog
Свойства FromPage и ToPage
|
Позволяют задать номер начальной и конечной страницы для вывода на устройство печати.
Свойства MinPage и МахРаде
Используются для задания минимального и максимального значений для диапазона выбираемых страниц. Отметим, что с изменением значений этих свойств значения соответствующих полей в диалоговой панели не изменяются.
|
|
Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначенные для поддерживания проводов на необходимой высоте над землей, водой...
Типы сооружений для обработки осадков: Септиками называются сооружения, в которых одновременно происходят осветление сточной жидкости...
Эмиссия газов от очистных сооружений канализации: В последние годы внимание мирового сообщества сосредоточено на экологических проблемах...
Своеобразие русской архитектуры: Основной материал – дерево – быстрота постройки, но недолговечность и необходимость деления...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!