Класс 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- объектDocFlavor -
attributes- наборDocAttributeSet, который может бытьnull - Исключения:
-
IllegalArgumentException- еслиflavorилиprintDataявляетсяnull, или набор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 - Возвращает:
InputStreamдля чтения байтов данных печати из этого документа. Если входной поток не может быть предоставлен, потому что этот документ не соответствует вышеуказанным критериям, возвращаетсяnull.- Исключения:
-
IOException- если при создании входного потока произошла ошибка ввода-вывода
© 1993, 2021, 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/17/docs/api/java.desktop/javax/print/SimpleDoc.html