Spec-Zone.ru › OpenJDK 25

Класс Size2DSyntax

java.lang.Object
javax.print.attribute.Size2DSyntax
Все реализуемые интерфейсы:
Serializable, Cloneable
Прямые известные подклассы:
MediaSize
public abstract class Size2DSyntax extends Object implements Serializable, Cloneable
Класс Size2DSyntax является абстрактным базовым классом, предоставляющим общую реализацию всех атрибутов, обозначающих размер в двух измерениях.

Значение атрибута размера в двух измерениях состоит из двух элементов: измерения X и измерения Y. Атрибут размера в двух измерениях можно создать, указав два значения и единицы, в которых они измеряются. Предусмотрены методы для получения значений атрибута размера в двух измерениях с указанием единиц, в которых должны быть возвращены значения. Две наиболее распространённые единицы измерения размера — дюймы (in) и миллиметры (mm); для указания этих единиц предусмотрены экспортируемые константы INCH и MM.

После создания значение атрибута размера в двух измерениях становится неизменяемым.

Проектирование

Значения измерений X и Y атрибута размера в двух измерениях хранятся внутри в виде целых чисел в микрометрах (µm), где 1 микрометр = 10-6 метра = 1/1000 миллиметра = 1/25400 дюйма. Это позволяет точно представлять размеры с точностью до 1/1000 мм (= 1 µm) или 1/100 дюйма (= 254 µm). Если дробные значения дюймов выражены отрицательными степенями двойки, размеры можно точно представить с точностью до 1/8 дюйма (= 3175 µm), но не до 1/16 дюйма (поскольку 1/16 дюйма не равна целому числу µm).

Хранение измерений во внутренних общих единицах µm позволяет сравнивать два атрибута размера независимо от единиц, в которых они были созданы; например, 8.5 in будет равно 215.9 mm, поскольку оба значения хранятся как 215900 µm. Например, служба поиска может сопоставлять атрибуты разрешения на основе равенства их сериализованных представлений независимо от единиц, в которых они были созданы. Использование целых чисел для внутреннего хранения позволяет выполнять точные сравнения на равенство, чего нельзя было бы гарантировать при использовании внутреннего представления с плавающей точкой. Обратите внимание: если вы ищете носитель размера U.S. letter в метрических единицах, нужно искать носитель размером 215.9 x 279.4 mm; округление до целых 216 x 279 mm не даст совпадения.

Экспортируемая константа INCH фактически является коэффициентом преобразования, на который нужно умножить значение в дюймах, чтобы получить значение в µm. Аналогично, экспортируемая константа MM является коэффициентом преобразования, на который нужно умножить значение в mm, чтобы получить значение в µm. Клиент может указать значение разрешения в единицах, отличных от дюймов или mm, передав собственный коэффициент преобразования. Однако, поскольку внутренняя единица µm была выбрана с расчётом на поддержку только внешних единиц дюйма и mm, нет гарантии, что коэффициент преобразования для единиц клиента будет целым числом. Если коэффициент преобразования не является целым числом, значения разрешения в единицах клиента не будут храниться точно.

См. также:
  • Сериализованная форма

Краткое описание полей

Модификатор и тип Поле Описание
static final int INCH
Значение для указания единиц измерения в дюймах (in).
static final int MM
Значение для указания единиц измерения в миллиметрах (mm).

Краткое описание конструкторов

Size2DSyntax(float x, float y, int units)
Size2DSyntax(int x, int y, int units)
Модификатор Конструктор Описание
protected
Создаёт новый атрибут размера в двух измерениях из заданных значений с плавающей точкой.
protected
Создаёт новый атрибут размера в двух измерениях из заданных целочисленных значений.

Краткое описание методов

Модификатор и тип Метод Описание
boolean equals(Object object)
Возвращает, эквивалентен ли этот атрибут размера в двух измерениях переданному объекту.
float[] getSize(int units)
Возвращает измерения этого атрибута размера в двух измерениях в заданных единицах в виде значений с плавающей точкой.
float getX(int units)
Возвращает измерение X этого атрибута размера в двух измерениях в заданных единицах в виде значения с плавающей точкой.
protected int getXMicrometers()
Возвращает измерение X этого атрибута размера в двух измерениях в микрометрах (µm).
float getY(int units)
Возвращает измерение Y этого атрибута размера в двух измерениях в заданных единицах в виде значения с плавающей точкой.
protected int getYMicrometers()
Возвращает измерение Y этого атрибута размера в двух измерениях в микрометрах (µm).
int hashCode()
Возвращает значение хеш-кода этого атрибута размера в двух измерениях.
String toString()
Возвращает строковое представление этого атрибута размера в двух измерениях.
String toString(int units, String unitsName)
Возвращает строковое представление этого атрибута размера в двух измерениях в заданных единицах.

Методы, объявленные в классе Object

clone, finalize, getClass, notify, notifyAll, wait, wait, wait

Подробное описание полей

INCH

public static final int INCH
Значение для указания единиц измерения в дюймах (in). Фактически это коэффициент преобразования, на который нужно умножить значение в дюймах, чтобы получить значение в µm (25400).
См. также:
  • Значения констант полей

MM

public static final int MM
Значение для указания единиц измерения в миллиметрах (mm). Фактически это коэффициент преобразования, на который нужно умножить значение в mm, чтобы получить значение в µm (1000).
См. также:
  • Значения констант полей

Подробное описание конструкторов

Size2DSyntax

protected Size2DSyntax(float x, float y, int units)
Создаёт новый атрибут размера в двух измерениях из заданных значений с плавающей точкой.
Параметры:
x — измерение X
y — измерение Y
units — коэффициент преобразования единиц, например INCH или MM
Исключения:
IllegalArgumentException — если x < 0 или y < 0 или units < 1

Size2DSyntax

protected Size2DSyntax(int x, int y, int units)
Создаёт новый атрибут размера в двух измерениях из заданных целочисленных значений.
Параметры:
x — измерение X
y — измерение Y
units — коэффициент преобразования единиц, например INCH или MM
Исключения:
IllegalArgumentException — если x < 0 или y < 0 или units < 1

Подробное описание методов

getSize

public float[] getSize(int units)
Возвращает измерения этого атрибута размера в двух измерениях в заданных единицах в виде значений с плавающей точкой.
Параметры:
units — коэффициент преобразования единиц, например INCH или MM
Возвращает:
массив из двух элементов: измерение X с индексом 0 и измерение Y с индексом 1
Исключения:
IllegalArgumentException — если units < 1

getX

public float getX(int units)
Возвращает измерение X этого атрибута размера в двух измерениях в заданных единицах в виде значения с плавающей точкой.
Параметры:
units — коэффициент преобразования единиц, например INCH или MM
Возвращает:
измерение X
Исключения:
IllegalArgumentException — если units < 1

getY

public float getY(int units)
Возвращает измерение Y этого атрибута размера в двух измерениях в заданных единицах в виде значения с плавающей точкой.
Параметры:
units — коэффициент преобразования единиц, например INCH или MM
Возвращает:
измерение Y
Исключения:
IllegalArgumentException — если units < 1

toString

public String toString(int units, String unitsName)
Возвращает строковое представление этого атрибута размера в двух измерениях в заданных единицах. Строка имеет вид "XxY U", где X — измерение X, Y — измерение Y, а U — название единиц измерения. Значения отображаются с плавающей точкой.
Параметры:
units — коэффициент преобразования единиц, например INCH или MM
unitsName — строка с названием единиц измерения, например in или mm. Если null, название единиц измерения не добавляется к результату
Возвращает:
String представление этого атрибута размера в двух измерениях
Исключения:
IllegalArgumentException — если units < 1

equals

public boolean equals(Object object)
Возвращает, эквивалентен ли этот атрибут размера в двух измерениях переданному объекту. Для эквивалентности должны выполняться все следующие условия:
  1. object не является null.
  2. object является экземпляром класса Size2DSyntax
  3. Измерение X этого атрибута равно измерению X объекта object.
  4. Измерение Y этого атрибута равно измерению Y объекта object.
Переопределяет:
equals в классе Object
Параметры:
object — Object для сравнения
Возвращает:
true, если object эквивалентен этому атрибуту размера в двух измерениях; в противном случае — false
См. также:
  • Object.hashCode()
  • HashMap

hashCode

public int hashCode()
Возвращает значение хеш-кода этого атрибута размера в двух измерениях.
Переопределяет:
hashCode в классе Object
Возвращает:
значение хеш-кода этого объекта
См. также:
  • Object.equals(java.lang.Object)
  • System.identityHashCode(Object)

toString

public String toString()
Возвращает строковое представление этого атрибута размера в двух измерениях. Строка имеет вид "XxY um", где X — измерение X, а Y — измерение Y. Значения представлены во внутренних единицах — микрометрах.
Переопределяет:
toString в классе Object
Возвращает:
строковое представление объекта

getXMicrometers

protected int getXMicrometers()
Возвращает измерение X этого атрибута размера в двух измерениях в микрометрах (µm). (Для использования в подклассе.)
Возвращает:
измерение X (µm)

getYMicrometers

protected int getYMicrometers()
Возвращает измерение Y этого атрибута размера в двух измерениях в микрометрах (µm). (Для использования в подклассе.)
Возвращает:
измерение Y (µm)

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в разделе Документация Java SE, содержащем более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторские права © 1993, 2025, Oracle и/или её аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 1993, 2025, 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/25/docs/api/java.desktop/javax/print/attribute/Size2DSyntax.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API