Класс SimpleDoc
- java.lang.Object
-
- javax.print.SimpleDoc
- Все реализованные интерфейсы:
- Doc
public final class SimpleDoc extends Object implements Doc
Этот класс является реализацией интерфейса Doc, который может использоваться во многих стандартных запросах на печать. Он может обрабатывать все текущие "предопределённые" типы данных для документов, определённые как статические переменные в классе DocFlavor.
В частности, этот класс реализует определённые обязательные семантические требования спецификации Doc следующим образом:
- создаёт поток для службы, если это запрошено и применимо.
- гарантирует возврат одного и того же объекта для каждого вызова метода.
- гарантирует возможность доступа к документу для нескольких потоков.
- выполняет некоторую валидацию, чтобы данные соответствовали типу документа.
Если данные для печати — это поток, или задание печати запрашивает данные как поток, то SimpleDoc не отслеживает, правильно ли служба закрывает поток после завершения передачи данных или завершения задания. Клиенты могут предпочесть использовать собственную реализацию документа, которая добавляет слушателя для отслеживания завершения задания и проверки того, что ресурсы, такие как потоки, освобождаются (т.е. закрываются).
Конструкторы
| Конструктор и описание |
|---|
SimpleDoc(Object printData,
DocFlavor flavor,
DocAttributeSet attributes) Создаёт |
Методы
| Модификатор и тип | Метод и описание |
|---|---|
DocAttributeSet |
getAttributes() Получает набор атрибутов печати для этого объекта документа. |
DocFlavor |
getDocFlavor() Определяет тип документа, в котором этот объект документа предоставит свои данные для печати. |
Object |
getPrintData() Получает объект представления данных для печати, содержащий фрагмент данных для печати этого объекта документа в формате, соответствующем поддерживаемому типу документа. |
Reader |
getReaderForText() Получает чтец для извлечения данных печатных символов из этого документа. |
InputStream |
getStreamForBytes() Получает входной поток для извлечения данных печатных байтов из этого документа. |
Методы, унаследованные от класса java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait Конструкторы
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 Описание скопировано из интерфейса: Doc
Получает объект представления данных для печати, содержащий фрагмент данных для печати этого объекта документа в формате, соответствующем поддерживаемому типу документа. Метод getPrintData() возвращает экземпляр класса представления, имя которого задано , и возвращаемое значение можно привести из класса Object к этому классу представления.getDocFlavor().getRepresentationClassName()
- Определено в:
-
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, 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.