Класс SimpleDoc
- Все реализованные интерфейсы:
Doc
public final class SimpleDoc extends Object implements Doc
Doc, который может использоваться во многих стандартных запросах на печать. Он может обрабатывать все определённые в настоящее время «предварительно определённые» форматы документов, заданные как статические переменные в классе DocFlavor. В частности, этот класс реализует некоторые необходимые семантики спецификации Doc следующим образом:
- создаёт поток для сервиса, если это запрошено и уместно.
- гарантирует, что каждый вызов метода возвращает тот же объект.
- гарантирует, что к
Docмогут получить доступ несколько потоков. - выполняет проверку соответствия данных формату документа.
MultiDoc не должны использовать этот класс. Если данные для печати являются потоком, или задание печати запрашивает данные в виде потока, тогда SimpleDoc не отслеживает, закрывает ли служба поток должным образом после завершения передачи данных или завершения задания. Клиенты могут предпочесть использовать свою собственную реализацию документа, которая добавляет слушатель для отслеживания завершения задания и проверки того, что ресурсы, такие как потоки, освобождены (т.е. закрыты).
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
SimpleDoc |
Создаёт SimpleDoc с указанными данными для печати, форматом документа и набором атрибутов документа. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
DocAttributeSet |
getAttributes() |
Получает набор атрибутов печати для данного объекта документа. |
DocFlavor |
getDocFlavor() |
Определяет формат документа, в котором этот объект документа предоставит свои данные для печати. |
Object |
getPrintData() |
Получает объект представления данных для печати, который содержит часть данных для печати этого объекта документа в формате, соответствующем поддерживаемому формату документа. |
Reader |
getReaderForText() |
Получает ридер для извлечения данных печати символов из этого документа. |
InputStream |
getStreamForBytes() |
Получает поток ввода для извлечения данных печати байтов из этого документа. |
Подробное описание конструкторов
SimpleDoc
public SimpleDoc(Object printData, DocFlavor flavor, DocAttributeSet attributes)
SimpleDoc с указанными данными для печати, форматом документа и набором атрибутов документа.- Параметры:
-
printData- объект данных для печати -
flavor- объект формата документа -
attributes- набор атрибутов документа, которые могут бытьnull - Исключения:
-
IllegalArgumentException- еслиflavorилиprintDataнекорректны, или набор атрибутов не соответствует указанному формату документа — например, данные не соответствуют типу, указанному в представленииDocFlavor
Подробное описание методов
getDocFlavor
public DocFlavor getDocFlavor()
- Определено в:
-
getDocFlavorв интерфейсеDoc - Возвращает:
- формат документа
getAttributes
public DocAttributeSet getAttributes()
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 - Возвращает:
- поток ввода для чтения байтов данных печати из этого документа. Если поток ввода предоставить невозможно, потому что этот документ не соответствует вышеуказанным критериям, возвращается
null. - Исключения:
-
IOException- если произошла ошибка ввода-вывода при создании потока ввода
© 1993, 2023, 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.
https://docs.oracle.com/en/java/javase/21/docs/api/java.desktop/javax/print/SimpleDoc.html