Spec-Zone.ru › OpenJDK 8

Пакет javax.print

Предоставляет основные классы и интерфейсы для API службы печати JavaTM.

См.: Описание

Интерфейс Описание
AttributeException

Интерфейс AttributeException — это интерфейс-миксин, который подкласс PrintException может реализовать для сообщения об ошибочном состоянии, связанном с одним или несколькими атрибутами печати, которые не поддерживает конкретный экземпляр службы печати.

CancelablePrintJob

Этот интерфейс используется приложением печати для отмены задания печати.

Doc

Интерфейс Doc определяет интерфейс для объекта, который предоставляет один фрагмент данных печати для задания печати.

DocPrintJob

Этот интерфейс представляет собой задание печати, которое может распечатать указанный документ с набором атрибутов задания.

FlavorException

Интерфейс FlavorException — это интерфейс-миксин, который подкласс PrintException может реализовать для сообщения об ошибочном состоянии, связанном с типом документа или типами документов (класс DocFlavor).

MultiDoc

Интерфейс MultiDoc определяет интерфейс для объекта, который предоставляет более одного фрагмента данных печати для задания печати.

MultiDocPrintJob

Полученный от MultiDocPrintService, MultiDocPrintJob может распечатать указанную коллекцию документов как одно задание печати с набором атрибутов задания.

MultiDocPrintService

Интерфейс MultiPrintService является фабрикой для MultiDocPrintJob.

PrintService

Интерфейс PrintService является фабрикой для DocPrintJob.

URIException

Интерфейс URIException — это интерфейс-миксин, который подкласс PrintException может реализовать для сообщения об ошибочном состоянии, связанном с адресом URI.

Класс Описание
DocFlavor

Класс DocFlavor инкапсулирует объект, который определяет формат, в котором данные печати передаются в DocPrintJob.

DocFlavor.BYTE_ARRAY

Класс DocFlavor.BYTE_ARRAY предоставляет предопределенные статические константы DocFlavor, например, типы документов, использующие массив байтов (byte[]) в качестве класса представления данных печати.

DocFlavor.CHAR_ARRAY

Класс DocFlavor.CHAR_ARRAY предоставляет предопределенные статические константы DocFlavor, например, типы документов, использующие массив символов (char[]) в качестве класса представления данных печати.

DocFlavor.INPUT_STREAM

Класс DocFlavor.INPUT_STREAM предоставляет предопределенные статические константы DocFlavor, например, типы документов, использующие байтовый поток (java.io.InputStream) в качестве класса представления данных печати.

DocFlavor.READER

Класс DocFlavor.READER предоставляет предопределенные статические константы DocFlavor, например, типы документов, использующие символьный поток (java.io.Reader) в качестве класса представления данных печати.

DocFlavor.SERVICE_FORMATTED

Класс DocFlavor.SERVICE_FORMATTED предоставляет предопределенные статические константы DocFlavor, например, типы документов для данных печати в формате службы.

DocFlavor.STRING

Класс DocFlavor.STRING предоставляет предопределенные статические константы DocFlavor, например, типы документов, использующие строку (java.lang.String) в качестве класса представления данных печати.

DocFlavor.URL

Класс DocFlavor.URL предоставляет предопределенные статические константы DocFlavor.

PrintServiceLookup

Реализации этого класса предоставляют службы поиска для служб печати (обычно эквивалентных принтерам) определенного типа.

ServiceUI

Этот класс представляет собой набор удобных методов пользовательского интерфейса, предоставляющих диалоговое окно графического пользователя для просмотра служб печати, найденных с помощью API службы печати Java.

ServiceUIFactory

Услуги могут по желанию предоставлять пользовательские интерфейсы, которые позволяют использовать различные стили взаимодействия в разных ролях.

SimpleDoc

Этот класс является реализацией интерфейса Doc и может использоваться во многих распространенных запросах на печать.

StreamPrintService

Этот класс расширяет PrintService и представляет собой службу печати, которая печатает данные в разных форматах в предоставляемый клиентом выходной поток.

StreamPrintServiceFactory

StreamPrintServiceFactory — это фабрика для экземпляров StreamPrintService, которые могут печатать в выходной поток в определенном формате документа, описанном как MIME-тип.

Исключение Описание
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, выполняет следующие шаги для обработки запроса на печать:
  1. Выбирает DocFlavor.
  2. Создает набор атрибутов.
  3. Находит службу печати, которая может обработать запрос на печать, как указано DocFlavor и набором атрибутов.
  4. Создает объект Doc, инкапсулирующий DocFlavor и фактические данные печати, которые могут иметь множество форм, включая: файл Postscript, изображение JPEG, URL или обычный текст.
  5. Получает задание печати, представленное DocPrintJob, из службы печати.
  6. Вызывает метод печати задания печати.
Следующий пример кода демонстрирует типичное использование API службы печати Java: поиск принтеров, которые могут напечатать пять двусторонних копий документа Postscript на бумаге формата А4, создание задания печати из одной из возвращённых служб печати и вызов печати.
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.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API