Spec-Zone.ru › OpenJDK 27

Класс SimpleDoc

java.lang.Object
javax.print.SimpleDoc
Все реализуемые интерфейсы:
Doc
public final class SimpleDoc extends Object implements Doc
Этот класс реализует интерфейс Doc и может использоваться для многих распространённых запросов на печать. Он поддерживает все определённые на данный момент предопределённые форматы документов, заданные в виде статических переменных класса DocFlavor.

В частности, этот класс реализует определённую обязательную семантику спецификации Doc следующим образом:

  • создаёт поток для службы, если это запрошено и уместно.
  • гарантирует, что при каждом вызове метода возвращается один и тот же объект.
  • гарантирует, что несколько потоков могут обращаться к Doc
  • выполняет некоторую проверку соответствия данных формату документа.
Клиентам, которые хотят повторно использовать объект документа в других заданиях или которым требуется MultiDoc, не следует использовать этот класс.

Если данные печати представлены потоком или задание печати запрашивает данные в виде потока, SimpleDoc не отслеживает, закрывает ли служба поток должным образом после завершения передачи данных или задания. Клиентам может быть удобнее предоставить собственную реализацию документа, которая добавляет слушателя для отслеживания завершения задания и проверки освобождения таких ресурсов, как потоки (то есть их закрытия).

Краткое описание конструкторов

Конструктор Описание
SimpleDoc(Object printData, DocFlavor flavor, DocAttributeSet attributes)
Создаёт SimpleDoc с указанными данными печати, форматом документа и набором атрибутов документа.

Краткое описание методов

Модификатор и тип Метод Описание
DocAttributeSet getAttributes()
Получает набор атрибутов печати для этого объекта документа.
DocFlavor getDocFlavor()
Определяет формат документа, в котором этот объект документа предоставляет свою часть данных печати.
Object getPrintData()
Получает объект представления данных печати, содержащий часть данных печати этого объекта документа в формате, соответствующем поддерживаемому формату документа.
Reader getReaderForText()
Получает средство чтения для извлечения символьных данных печати из этого документа.
InputStream getStreamForBytes()
Получает входной поток для извлечения байтовых данных печати из этого документа.

Методы, объявленные в классе Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Модификатор и тип Метод Описание
protected Object clone()
Создаёт и возвращает копию этого объекта.
boolean equals(Object obj)
Указывает, равен ли этот объект другому объекту.
protected void finalize()
Устарело, будет удалено: этот элемент API подлежит удалению в будущей версии.
Финализация объявлена устаревшей и подлежит удалению в одном из будущих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
int hashCode()
Возвращает хеш-код этого объекта.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
String toString()
Возвращает строковое представление объекта.
final void wait()
Заставляет текущий поток ожидать, пока он не будет разбужен, обычно в результате вызова notify или interrupt.
final void wait(long timeoutMillis)
Заставляет текущий поток ожидать, пока он не будет разбужен, обычно в результате вызова notify или interrupt, либо пока не истечёт заданный промежуток реального времени.
final void wait(long timeoutMillis, int nanos)
Заставляет текущий поток ожидать, пока он не будет разбужен, обычно в результате вызова notify или interrupt, либо пока не истечёт заданный промежуток реального времени.

Подробное описание конструкторов

SimpleDoc

public SimpleDoc(Object printData, DocFlavor flavor, DocAttributeSet attributes)
Создаёт SimpleDoc с указанными данными печати, форматом документа и набором атрибутов документа.
Параметры:
printData — объект данных печати
flavor — объект DocFlavor
attributes — DocAttributeSet, который может быть null
Исключения:
IllegalArgumentException — если flavor или printData равен null, либо printData не соответствует указанному формату документа — например, данные не имеют типа, заданного в качестве представления в DocFlavor

Подробное описание методов

getDocFlavor

public DocFlavor getDocFlavor()
Определяет формат документа, в котором этот объект документа предоставляет свою часть данных печати.
Определено в:
getDocFlavor в интерфейсе Doc
Возвращает:
формат документа

getAttributes

public DocAttributeSet getAttributes()
Получает набор атрибутов печати для этого объекта документа. Если возвращённый набор атрибутов содержит экземпляр определённого атрибута X, принтер должен использовать значение этого атрибута для данного документа, переопределяя любое значение атрибута X в наборе атрибутов задания. Если возвращённый набор атрибутов не содержит экземпляра определённого атрибута X или возвращается null, принтер должен проверить набор атрибутов задания, чтобы получить значение атрибута X, а если оно там не найдено — использовать значение по умолчанию, зависящее от реализации. Возвращённый набор атрибутов нельзя изменить.
Определено в:
getAttributes в интерфейсе Doc
Возвращает:
неизменяемый набор атрибутов печати для этого документа или null, чтобы получить все значения атрибутов из набора атрибутов задания

getPrintData

public Object getPrintData() throws IOException
Получает объект представления данных печати, содержащий часть данных печати этого объекта документа в формате, соответствующем поддерживаемому формату документа. Метод getPrintData() возвращает экземпляр класса представления, имя которого указано в getDocFlavor().getRepresentationClassName(), и возвращаемое значение можно привести из класса Object к этому классу представления.
Определено в:
getPrintData в интерфейсе Doc
Возвращает:
объект представления данных печати
Исключения:
IOException — если класс представления является потоком и при создании потока произошла ошибка ввода-вывода

getReaderForText

public Reader getReaderForText() throws IOException
Получает средство чтения для извлечения символьных данных печати из этого документа. Реализация Doc должна поддерживать этот метод, если DocFlavor имеет один из следующих классов представления данных печати, и возвращать null в противном случае:
  • char[]
  • java.lang.String
  • java.io.Reader
Объект представления данных печати документа используется для создания и возврата Reader, считывающего данные печати из объекта представления в виде потока символов. Однако если сам объект представления данных печати является Reader, возвращается непосредственно объект представления данных печати.
Определено в:
getReaderForText в интерфейсе Doc
Возвращает:
Reader для чтения символов данных печати из этого документа. Если средство чтения нельзя предоставить, поскольку этот документ не соответствует указанным выше критериям, возвращается null.
Исключения:
IOException — если при создании средства чтения произошла ошибка ввода-вывода

getStreamForBytes

public InputStream getStreamForBytes() throws IOException
Получает входной поток для извлечения байтовых данных печати из этого документа. Реализация Doc должна поддерживать этот метод, если DocFlavor имеет один из следующих классов представления данных печати; в противном случае метод возвращает null:
  • byte[]
  • java.io.InputStream
Получается объект представления данных печати документа. Затем создаётся и возвращается входной поток для чтения данных печати из объекта представления в виде потока байтов. Однако если сам объект представления данных печати является входным потоком, возвращается непосредственно объект представления данных печати.
Определено в:
getStreamForBytes в интерфейсе Doc
Возвращает:
InputStream для чтения байтов данных печати из этого документа. Если входной поток нельзя предоставить, поскольку этот документ не соответствует указанным выше критериям, возвращается null.
Исключения:
IOException — если при создании входного потока произошла ошибка ввода-вывода

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в разделе Документация Java SE, содержащем более подробные описания для разработчиков, концептуальные обзоры, определения терминов, обходные решения и работающие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторские права © 1993, 2026, Oracle и/или её аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 1993, 2025, 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