Печать документов на принтере и ActionScript 3.0

В ActionScript 3.0 за работу с принтером отвечает класс PrintJob. PrintJob позволяет распечатать содержимое любого экземпляра класса Sprite (PrintJob распечатывает именно спрайт, но внутри спрайта могут находиться и текстовые поля, и растровые изображения, и другие визуальные объекты).

Код ActionScript 3.0:

/* импорт классов */ import flash.printing.PrintJob; import flash.display.Sprite; import flash.text.TextField; import flash.text.TextFieldType; import flash.geom.Rectangle; import flash.events.MouseEvent; /* спрайт, содержимое которого будем выводить на печать */ var sprite:Sprite = new Sprite(); addChild(sprite); /* динамическое текстовое поле, помещённое внутрь спрайта */ var txtField:TextField = new TextField(); txtField.type = TextFieldType.INPUT; txtField.width = 450; txtField.height = 200; txtField.x = 50; txtField.y = 50; txtField.border = true; txtField.borderColor = 0x999999; txtField.text = "Ваш текст"; sprite.addChild(txtField); /* кнопка PRINT */ btn.addEventListener(MouseEvent.CLICK, printSprite); function printSprite(event:MouseEvent):void { /* создаём объект класса PrintJob */ var printJob:PrintJob = new PrintJob(); /* начинаем процесс печати */ printJob.start(); /* добавляем спрайт на печать */ printJob.addPage(sprite, new Rectangle(0, 0, 550, 400)); /* отправляем принтеру на печать */ printJob.send(); }

Обратите внимание на второй параметр у метода addPage(). С помощью этого параметра мы можем указать прямоугольную область спрайта, которую хотим распечатать. В данном случае на принтер выводится прямоугольная область шириной 550 px, высотой 400 px и с координатами верхнего левого угла (0,0).

Результат:

Вводим свой текст в текстовое поле (например, "Привет, мир!") и жмём кнопку «PRINT». Появляется системное окно с настройками печати (повлиять на настройки принтера из flash-приложения нельзя, хотя у класса PrintJob имеется возможность считывать некоторые из настроек печати, а это даёт возможность соответствующим образом подготовить к печати сам спрайт):

Печать документов на принтере и ActionScript 3.0

Жмём «OK» и получаем примерно следующее:

Печать документов на принтере и ActionScript 3.0

Пример, конечно, довольно примитивный, но для большинства случаев этого вполне достаточно.

Скачать исходники можно тут - скачать исходники (под Adobe Flash CS 5.5).

Автор: admin

Дата добавления: 2012-09-19

Просмотров: 3457

Рейтинг поста: +12-

Правила перепечатки

Социальные закладки:
Комментарии:
К данной заметке комментариев пока нет. Ваш комментарий может стать первым.
Добавить комментарий:







[ + ] помощь по форматирование текста

Идиот-тест

Если все обязательные поля (отмечены * ) заполнены необходимой информацией, то нажимаем кнопку Добавить комментарий.

Меню
Подписка
Рубрики
Метки
Последние комментарии
Рейтинг постов
Реклама
Друзья
География гостей
Статистика
Яндекс.Метрика