Пакет javax.print.attribute.standard
Пакет javax.print.attribute.standard содержит классы для конкретных атрибутов печати. Родительский пакет javax.print.attribute предоставляет классы и интерфейсы, описывающие типы атрибутов службы печати Java и способы их сбора в наборы атрибутов.
Атрибут представляет собой функцию печати, которую может предоставить служба печати. Для каждого атрибута служба печати либо поддерживает его, либо нет. Для каждого возможного значения поддерживаемого атрибута служба печати либо поддерживает его, либо нет.
API требует, чтобы каждая служба печати поддерживала определенные атрибуты; другие атрибуты являются необязательными, и служба может выбрать, поддерживать их или нет. Каждый атрибут имеет набор значений, которые он принимает. API требует, чтобы каждая служба печати поддерживала определенные значения для определенных атрибутов; другие значения атрибутов являются необязательными, и служба может выбрать, поддерживать их или нет. Эти требования поддержки записываются в документации для каждого класса атрибута.
Пакет javax.print.attribute.standard содержит стандартные атрибуты печати и стандартные значения атрибутов печати, которые широко используются в области печати. Поставщик службы печати может предоставлять новые атрибуты печати, специфичные для поставщика, в дополнение к стандартным. Поставщик также может предоставлять специфичные для поставщика расширения (подклассы) стандартных атрибутов печати — например, для предоставления дополнительных значений, специфичных для поставщика, для существующего стандартного атрибута. Конечно, если поставщик хочет, чтобы клиенты могли использовать любые добавленные или расширенные атрибуты, поставщик должен опубликовать новые классы атрибутов.
Многие из стандартных классов атрибутов расширяют один из абстрактных классов синтаксиса пакета javax.print.attribute. Каждый из этих абстрактных классов синтаксиса представляет собой разный тип. Например, класс EnumSyntax представляет собой безопасное по типам перечисление. Абстрактный класс синтаксиса предоставляет оболочку для значения атрибута.
Если класс атрибута расширяет EnumSyntax, и значение атрибута является совместимым со значением IPP, метод toString атрибута возвращает строковое представление значения атрибута в формате IPP, например, "processing-stopped" для атрибута JobState. Однако, поскольку класс EnumSyntax является расширяемым, поставщики могут определять свои собственные значения атрибутов. Если атрибут использует класс EnumSyntax и установлен на одно из этих определенных поставщиком значений, метод toString не вернёт строковое представление значения в формате IPP.
Как правило, приложению-клиенту для печати не нужно использовать все классы атрибутов печати в пакете javax.print.attribute.standard, только те, которые относятся к приложению.
Классы атрибутов в пакете javax.print.attribute.standard основаны на атрибутах протокола печати по Интернету (IPP), определенных в документе RFC Интернета RFC 2911 Internet Printing Protocol/1.1: Model and Semantics от сентября 2000 года. Дополнительную информацию см. в RFC 2911. Описательный текст для каждого класса атрибута в значительной степени взят из вышеупомянутых документов. Вклад авторов вышеупомянутых документов в API признателен.
Организация атрибутов
Существует пять видов атрибутов печати: атрибуты документа, атрибуты запроса на печать, атрибуты задания печати, атрибуты службы печати и атрибуты поддерживаемых значений.Атрибуты документа
Атрибуты документа указывают характеристики отдельного документа и параметры задания печати, которые будут применяться к отдельному документу. Класс атрибута документа реализует интерфейс DocAttribute. Атрибут документа может отображаться в DocAttributeSet.Атрибуты запроса на печать
Атрибуты запроса на печать определяют параметры, которые будут применяться ко всему заданию печати и ко всем документам в задании печати. Класс атрибута запроса на печать реализует интерфейс PrintRequestAttribute. Атрибут запроса на печать может отображаться в PrintRequestAttributeSet.Некоторые атрибуты являются атрибутами документа, но не атрибутами запроса на печать и могут быть указаны только на уровне документа. Некоторые атрибуты являются атрибутами запроса на печать, но не атрибутами документа и могут быть указаны только на уровне запроса на печать. Некоторые атрибуты являются одновременно атрибутами документа и атрибутами запроса на печать и могут быть указаны либо на уровне документа, либо на уровне запроса на печать.
При указании на уровне документа атрибут применяется только к этому одному документу. При указании на уровне запроса на печать атрибут применяется ко всему заданию, включая все документы в задании. Однако атрибут, указанный на уровне документа, переопределяет атрибут в той же категории, указанный на уровне запроса на печать.
Атрибуты задания печати
Атрибуты задания печати сообщают о состоянии задания печати. Класс атрибута задания печати реализует интерфейс PrintJobAttribute. Атрибут задания печати может отображаться в PrintJobAttributeSet.Некоторые атрибуты являются одновременно атрибутами запроса на печать и атрибутами задания печати; клиент может включить такие атрибуты в запрос на печать, чтобы указать характеристики последующего задания печати, и эти атрибуты затем также появляются в наборе атрибутов задания печати. Некоторые атрибуты являются атрибутами задания печати, но не атрибутами запроса на печать; сама служба печати добавляет эти атрибуты в набор атрибутов задания печати.
Атрибуты службы печати
Атрибуты службы печати сообщают о состоянии службы печати. Класс атрибута службы печати реализует интерфейс PrintServiceAttribute. Атрибут службы печати может отображаться в PrintServiceAttributeSet.Атрибуты поддерживаемых значений
Атрибут поддерживаемого значения указывает допустимые значения для другого атрибута, поддерживаемого службой печати. Класс атрибута поддерживаемых значений реализует интерфейс SupportedValuesAttribute. Однако атрибуты поддерживаемых значений никогда не отображаются в наборах атрибутов, поэтому для них нет ограниченного подинтерфейса AttributeSet.Таблица атрибутов
В таблице ниже перечислены все атрибуты печати. Таблица показывает реализуемые интерфейсы тегов для каждого класса атрибута в дополнение к интерфейсу Attribute, тем самым показывая, как каждый атрибут используется в API. Для каждого атрибута документа и атрибута запроса на печать столбец "SupportedValuesAttribute" перечисляет класс атрибута поддерживаемых значений, если таковой имеется, с помощью которого служба печати указывает поддерживаемые значения для этой категории атрибутов. Обратите внимание: В API javax.print, параметр ссылки null к методам неверен, если явно не задокументировано в методе как имеющий осмысленное толкование. Использование в противном случае является неправильным кодированием и может привести к исключению времени выполнения либо немедленно, либо в какой-то момент позже. IllegalArgumentException и NullPointerException являются примерами типичных и приемлемых исключений времени выполнения для таких случаев.
- С момента:
- 1.4
| Класс | Описание |
|---|---|
| Хроматичность | Класс |
| ПоддержкаЦвета | Класс |
| Сжатие | Класс |
| Копии | Класс |
| ПоддерживаемыеКопии | Класс |
| ДатаВремяЗавершения | Класс |
| ДатаВремяСоздание | Класс |
| ДатаВремяОбработки | Класс |
| Назначение | Класс |
| ВладелецДиалога | Класс атрибутов, используемый для поддержки запроса отображения диалога печати или настройки страницы поверх всех окон или определенного окна. |
| ВыборТипаДиалога | Класс |
| ИмяДокумента | Класс |
| Точность | Класс |
| Доработки | Класс |
| ОтложитьЗаданиеДо | Класс |
| ОбщееКоличествоОтпечатков | Класс |
| ЗавершенныеОтпечатки | Класс |
| ПоддерживаемыеОтпечатки | Класс |
| ОбщееКоличествоКОктетов | Класс |
| ОбработанныеКОктеты | Класс |
| ПоддерживаемыеКОктеты | Класс |
| ЛистыНосителя | Класс |
| ЗавершенныеЛистыНосителя | Класс |
| ПоддерживаемыеЛистыНосителя | Класс |
| СообщениеОтОператора | Класс |
| ИмяЗадания | Класс |
| ИмяПользователяИнициатора | Класс |
| ПриоритетЗадания | Класс |
| ПоддержкаПриоритетов | Класс |
| ЛистыЗадания | Класс |
| СостояниеЗадания |
|
| ПричинаСостояния | Класс |
| ПричиныСостояния | Класс |
| Носитель | Класс |
| ИмяНосителя | Класс |
| ПечатаемаяПлощадьНосителя | Класс |
| РазмерНосителя | Класс |
| MediaSize.Инженерный | Класс |
| MediaSize.ISO | Класс |
| MediaSize.JIS | Класс |
| MediaSize.NA | Класс |
| MediaSize.Другие | Класс |
| ИмяРазмерНосителя | Класс |
| ЛотокНосителя | Класс |
| ОбработкаНесколькихДокументов | Класс |
| Количество документов | Класс |
|---|---|
| Количество вмешавшихся задач | Класс |
| Количество страниц на листе | Класс |
| Поддерживаемые значения количества страниц на листе | Класс |
| Запрошенная ориентация | Класс |
| Назначенное выходное устройство | Класс |
| Диапазоны страниц | Класс |
| Страниц в минуту | Класс |
| Страниц в минуту (цвет) | Класс |
| Поддержка переопределения PDL | Класс |
| Направление презентации | Класс |
| Информация о принтере | Класс |
| Принтер принимает задачи | Класс |
| Расположение принтера | Класс |
| Производитель и модель принтера | Класс |
| Сообщение от оператора принтера | Класс |
| Дополнительная информация о принтере | Класс |
| Дополнительная информация о производителе устройства | Класс |
| Имя принтера | Класс |
| Разрешение принтера | Класс |
| Состояние принтера | Класс |
| Причина состояния принтера | Класс |
| Причины состояния принтера | Класс |
| URI принтера | Класс |
| Качество печати | Класс |
| Количество задач в очереди | Класс |
| Поддерживаемые схемы URI | Класс |
| Имя пользователя, запрашивающего печать | Класс |
| Серьезность | Класс |
| Сортировка листов | Класс |
| Стороны | Класс |
© 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.
https://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/javax/print/attribute/standard/package-summary.html