Класс ResolutionSyntax
- Все реализованные интерфейсы:
-
Serializable,Cloneable
- Прямые известные подклассы:
PrinterResolution
public abstract class ResolutionSyntax extends Object implements Serializable, Cloneable
ResolutionSyntax — это абстрактный базовый класс, предоставляющий общее реализация всех атрибутов, обозначающих разрешение принтера. Значение атрибута разрешения состоит из двух элементов: разрешение по направлению подачи и разрешение по направлению продольной подачи. Атрибут разрешения может быть создан путем ввода двух значений и указания единиц измерения этих значений. Предоставляются методы для возвращения значений атрибута разрешения, указывающие единицы, в которых значения должны быть возвращены. Две наиболее распространённые единицы измерения разрешения — точки на дюйм (dpi) и точки на сантиметр (dpcm), и экспортированные константы DPI и DPCM предоставляются для указания этих единиц.
После создания значение атрибута разрешения является неизменяемым.
Проектирование
Значения разрешения атрибута разрешения по направлению подачи и по направлению продольной подачи хранятся в памяти в единицах точек на 100 дюймов (dphi). Хранение значений в dphi, а не, скажем, в метрических единицах, позволяет выполнять точные целочисленные арифметические преобразования между dpi и dphi и между dpcm и dphi: 1 dpi = 100 dphi, 1 dpcm = 254 dphi. Таким образом, значения могут быть записаны в атрибут разрешения и извлечены из него в любой из единиц без потери точности. Это не было бы гарантировано, если бы использовалось представление с плавающей точкой. Однако, в общем случае, произойдёт ошибка округления, если значения атрибута разрешения созданы в одних единицах и извлечены в других единицах; например, 600 dpi будет округлено до 236 dpcm, тогда как истинное значение (с пятью знаками) составляет 236,22 dpcm.
Хранение значений во внутренних общих единицах dphi позволяет сравнивать два атрибута разрешения без учёта единиц, в которых они были созданы; например, 300 dpcm будет эквивалентно 762 dpi, так как оба значения хранятся как 76200 dphi. В частности, служба поиска может сопоставлять атрибуты разрешения на основе равенства их сериализованных представлений независимо от единиц, в которых они были созданы. Опять же, использование целых чисел для внутреннего хранения позволяет выполнять точные сравнения на равенство, что не было бы гарантировано при использовании представления с плавающей точкой.
Экспортированная константа DPI фактически является коэффициентом преобразования, с помощью которого следует умножать значение в dpi, чтобы получить значение в dphi. Аналогично, экспортированная константа DPCM является коэффициентом преобразования, с помощью которого следует умножать значение в dpcm, чтобы получить значение в dphi. Клиент может указать значение разрешения в единицах, отличных от dpi или dpcm, предоставив собственный коэффициент преобразования. Однако, поскольку внутренние единицы dphi были выбраны с учетом поддержки только внешних единиц dpi и dpcm, нет гарантии, что коэффициент преобразования для единиц клиента будет точным целым числом. Если коэффициент преобразования не является целым числом, значения разрешения в единицах клиента не будут храниться точно.
- См. также:
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static final int |
DPCM |
Значение для указания единиц точек на сантиметр (dpcm). |
static final int |
DPI |
Значение для указания единиц точек на дюйм (dpi). |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
ResolutionSyntax |
Создаёт новый атрибут разрешения из заданных элементов. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean |
equals |
Возвращает, эквивалентен ли этот атрибут разрешения переданному объекту. |
int |
getCrossFeedResolution |
Возвращает разрешение атрибута разрешения по направлению подачи в заданных единицах. |
protected int |
getCrossFeedResolutionDphi() |
Возвращает разрешение атрибута разрешения по направлению подачи в единицах dphi. |
int |
getFeedResolution |
Возвращает разрешение атрибута разрешения по направлению продольной подачи в заданных единицах. |
protected int |
getFeedResolutionDphi() |
Возвращает разрешение атрибута разрешения по направлению продольной подачи в единицах dphi. |
int[] |
getResolution |
Получает значения разрешения этого атрибута разрешения в заданных единицах. |
int |
hashCode() |
Возвращает хэш-код для этого атрибута разрешения. |
boolean |
lessThanOrEquals |
Определяет, меньше ли значение этого атрибута разрешения или равно заданному значению атрибута разрешения. |
String |
toString() |
Возвращает строковое представление этого атрибута разрешения. |
String |
toString |
Возвращает строковое представление этого атрибута разрешения в заданных единицах. |
Подробное описание полей
DPI
public static final int DPI
- См. также:
DPCM
public static final int DPCM
- См. также:
Подробное описание конструкторов
ResolutionSyntax
public ResolutionSyntax(int crossFeedResolution, int feedResolution, int units)
- Параметры:
-
crossFeedResolution- разрешение в направлении поперечного смещения -
feedResolution- разрешение в направлении подачи -
units- коэффициент пересчета единиц, например,DPIилиDPCM - Исключения:
-
IllegalArgumentException- еслиcrossFeedResolution < 1илиfeedResolution < 1илиunits < 1
Подробное описание методов
getResolution
public int[] getResolution(int units)
- Параметры:
-
units- коэффициент пересчета единиц, например,DPIилиDPCM - Возвращает:
- двухэлементный массив, содержащий разрешение в направлении поперечного смещения (индекс 0) и разрешение в направлении подачи (индекс 1)
- Исключения:
-
IllegalArgumentException- еслиunits < 1
getCrossFeedResolution
public int getCrossFeedResolution(int units)
- Параметры:
-
units- коэффициент пересчета единиц, например,DPIилиDPCM - Возвращает:
- разрешение в направлении поперечного смещения
- Исключения:
-
IllegalArgumentException- еслиunits < 1
getFeedResolution
public int getFeedResolution(int units)
- Параметры:
-
units- коэффициент пересчета единиц, например,DPIилиDPCM - Возвращает:
- разрешение в направлении подачи
- Исключения:
-
IllegalArgumentException- еслиunits < 1
toString
public String toString(int units, String unitsName)
"CxF U", где C — разрешение в направлении поперечного смещения, F — разрешение в направлении подачи, а U — имя единиц. Значения округляются до ближайшего целого числа.- Параметры:
-
units- коэффициент пересчета единиц, например,CODE>DPIилиDPCM -
unitsName- строка с именем единиц, например,"dpi"или"dpcm". Еслиnull, имя единиц к результату не добавляется. - Возвращает:
- строковое представление данного атрибута разрешения
- Исключения:
-
IllegalArgumentException- еслиunits < 1
lessThanOrEquals
public boolean lessThanOrEquals(ResolutionSyntax other)
- Разрешение данного атрибута в направлении поперечного смещения меньше или равно разрешению атрибута
otherв направлении поперечного смещения. - Разрешение данного атрибута в направлении подачи меньше или равно разрешению атрибута
otherв направлении подачи.
- Параметры:
-
other- атрибут разрешения для сравнения - Возвращает:
-
trueесли значение данного атрибута разрешения меньше или равно значению атрибута разрешенияother,falseв противном случае - Исключения:
-
NullPointerException- еслиotherявляетсяnull
equals
public boolean equals(Object object)
-
objectне являетсяnull. -
objectявляется экземпляром классаResolutionSyntax. - Разрешение данного атрибута в направлении поперечного смещения равно разрешению атрибута
objectв направлении поперечного смещения. - Разрешение данного атрибута в направлении подачи равно разрешению атрибута
objectв направлении подачи.
- Переопределяет:
-
equalsв классеObject - Параметры:
-
object- объектObjectдля сравнения - Возвращает:
-
trueесли объектobjectэквивалентен данному атрибуту разрешения,falseв противном случае - См. также:
hashCode
public int hashCode()
- Переопределяет:
-
hashCodeв классеObject - Возвращает:
- значение хэш-кода для данного объекта.
- См. также:
toString
public String toString()
"CxF dphi", где C — разрешение в направлении поперечного смещения, а F — разрешение в направлении подачи. Значения отчета в внутренних единицах dphi.- Переопределяет:
-
toStringв классеObject - Возвращает:
- строковое представление объекта.
getCrossFeedResolutionDphi
protected int getCrossFeedResolutionDphi()
- Возвращает:
- разрешение в направлении поперечного смещения
getFeedResolutionDphi
protected int getFeedResolutionDphi()
- Возвращает:
- разрешение в направлении подачи
© 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/attribute/ResolutionSyntax.html