Пакет javax.print
Предоставляет основные классы и интерфейсы для API службы печати JavaTM.
См.: Описание
| Интерфейс | Описание |
|---|---|
| AttributeException | Интерфейс AttributeException — это интерфейс-миксин, который подкласс |
| CancelablePrintJob | Этот интерфейс используется приложением печати для отмены задания печати. |
| Doc | Интерфейс Doc определяет интерфейс для объекта, который предоставляет один фрагмент данных печати для задания печати. |
| DocPrintJob | Этот интерфейс представляет собой задание печати, которое может распечатать указанный документ с набором атрибутов задания. |
| FlavorException | Интерфейс FlavorException — это интерфейс-миксин, который подкласс |
| MultiDoc | Интерфейс MultiDoc определяет интерфейс для объекта, который предоставляет более одного фрагмента данных печати для задания печати. |
| MultiDocPrintJob | Полученный от MultiDocPrintService, MultiDocPrintJob может распечатать указанную коллекцию документов как одно задание печати с набором атрибутов задания. |
| MultiDocPrintService | Интерфейс MultiPrintService является фабрикой для MultiDocPrintJob. |
| PrintService | Интерфейс PrintService является фабрикой для DocPrintJob. |
| URIException | Интерфейс URIException — это интерфейс-миксин, который подкласс |
| Класс | Описание |
|---|---|
| DocFlavor | Класс |
| DocFlavor.BYTE_ARRAY | Класс DocFlavor.BYTE_ARRAY предоставляет предопределенные статические константы DocFlavor, например, типы документов, использующие массив байтов ( |
| DocFlavor.CHAR_ARRAY | Класс DocFlavor.CHAR_ARRAY предоставляет предопределенные статические константы DocFlavor, например, типы документов, использующие массив символов ( |
| DocFlavor.INPUT_STREAM | Класс DocFlavor.INPUT_STREAM предоставляет предопределенные статические константы DocFlavor, например, типы документов, использующие байтовый поток ( |
| DocFlavor.READER | Класс DocFlavor.READER предоставляет предопределенные статические константы DocFlavor, например, типы документов, использующие символьный поток ( |
| DocFlavor.SERVICE_FORMATTED | Класс DocFlavor.SERVICE_FORMATTED предоставляет предопределенные статические константы DocFlavor, например, типы документов для данных печати в формате службы. |
| DocFlavor.STRING | Класс DocFlavor.STRING предоставляет предопределенные статические константы DocFlavor, например, типы документов, использующие строку ( |
| DocFlavor.URL | Класс DocFlavor.URL предоставляет предопределенные статические константы DocFlavor. |
| PrintServiceLookup | Реализации этого класса предоставляют службы поиска для служб печати (обычно эквивалентных принтерам) определенного типа. |
| ServiceUI | Этот класс представляет собой набор удобных методов пользовательского интерфейса, предоставляющих диалоговое окно графического пользователя для просмотра служб печати, найденных с помощью API службы печати Java. |
| ServiceUIFactory | Услуги могут по желанию предоставлять пользовательские интерфейсы, которые позволяют использовать различные стили взаимодействия в разных ролях. |
| SimpleDoc | Этот класс является реализацией интерфейса |
| StreamPrintService | Этот класс расширяет |
| StreamPrintServiceFactory |
|
| Исключение | Описание |
|---|---|
| PrintException | Класс PrintException инкапсулирует ошибку, связанную с печатью, которая произошла при использовании экземпляра службы печати. |
Описание пакета javax.print
Предоставляет основные классы и интерфейсы для API службы печати JavaTM. API службы печати Java позволяет клиентским и серверным приложениям:
- Обнаруживать и выбирать службы печати на основе их возможностей
- Указывать формат данных печати
- Отправлять задания печати в службы, которые поддерживают тип документа, который нужно напечатать.
Обнаружение службы печати
Приложение вызывает статические методы абстрактного класса PrintServiceLookup для поиска служб печати, которые обладают возможностями для удовлетворения запроса на печать приложения. Например, для печати двустороннего документа приложение сначала должно найти принтеры, которые имеют возможность двусторонней печати.
JDK включает PrintServiceLookup реализации, которые могут найти стандартные принтеры платформы. Чтобы найти другие типы принтеров, такие как принтеры IPP или принтеры JINI, поставщик служб печати может написать реализации PrintServiceLookup. Поставщик служб печати может динамически устанавливать эти PrintServiceLookup реализации, используя спецификацию файла JAR файла JAR-спецификации поставщиков служб.
Определения атрибутов
Пакетыjavax.print.attribute и javax.print.attribute.standard определяют атрибуты печати, которые описывают возможности службы печати, определяют требования к заданию печати и отслеживают ход выполнения задания печати. Пакет javax.print.attribute описывает типы атрибутов и то, как их можно собирать в наборы. Пакет javax.print.attribute.standard перечисляет все стандартные атрибуты, поддерживаемые API, большинство из которых являются реализациями атрибутов, указанных в спецификации IETF, RFC 2911 Internet Printing Protocol, 1.1: Model and Semantics, от сентября 2000 года. Атрибуты, указанные в javax.print.attribute.standard, включают общие возможности, такие как: разрешение, копии, размеры носителей, приоритет задания и диапазоны страниц.
Указание типа документа
КлассDocFlavor представляет собой формат данных печати, такой как JPEG или PostScript. Объект DocFlavor состоит из MIME-типа, который описывает формат, и имени класса представления документа, указывающего, как документ передаётся принтеру или выходному потоку. Приложение использует DocFlavor и набор атрибутов для поиска принтеров, которые могут печатать указанный типом документа DocFlavor и имеют указанные набором атрибутов возможности. Использование API
Типичное приложение, использующее API службы печати Java, выполняет следующие шаги для обработки запроса на печать:- Выбирает
DocFlavor. - Создает набор атрибутов.
- Находит службу печати, которая может обработать запрос на печать, как указано
DocFlavorи набором атрибутов. - Создает объект
Doc, инкапсулирующийDocFlavorи фактические данные печати, которые могут иметь множество форм, включая: файл Postscript, изображение JPEG, URL или обычный текст. - Получает задание печати, представленное
DocPrintJob, из службы печати. - Вызывает метод печати задания печати.
FileInputStream psStream;
try {
psStream = new FileInputStream("file.ps");
} catch (FileNotFoundException ffne) {
}
if (psStream == null) {
return;
}
DocFlavor psInFormat = DocFlavor.INPUT_STREAM.POSTSCRIPT;
Doc myDoc = new SimpleDoc(psStream, psInFormat, null);
PrintRequestAttributeSet aset =
new HashPrintRequestAttributeSet();
aset.add(new Copies(5));
aset.add(MediaSize.A4);
aset.add(Sides.DUPLEX);
PrintService[] services =
PrintServiceLookup.lookupPrintServices(psInFormat, aset);
if (services.length > 0) {
DocPrintJob job = services[0].createPrintJob();
try {
job.print(myDoc, aset);
} catch (PrintException pe) {}
} Обратите внимание: В API javax.print, параметр null в методах неверен, если в документации к методу не указано, что он имеет осмысленную интерпретацию. Использование в противном случае является некорректным кодом и может привести к исключению во время выполнения сразу или в какой-то момент позже. IllegalArgumentException и NullPointerException — примеры типичных и допустимых исключений во время выполнения для таких случаев.
- С:
- 1.4
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.