Spec-Zone.ru › OpenJDK 8

Класс Size2DSyntax

  • java.lang.Object
    • javax.print.attribute.Size2DSyntax
Все реализованные интерфейсы:
Serializable, Cloneable
Непосредственные известные подклассы:
MediaSize

public abstract class Size2DSyntax
extends Object
implements Serializable, Cloneable

Класс Size2DSyntax — это абстрактный базовый класс, предоставляющий общее реализацию всех атрибутов, обозначающих размер в двух измерениях.

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

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

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

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

Хранение размеров внутри в общих единицах µм позволяет сравнивать два атрибута размера без учета единиц, в которых они были созданы; например, 8,5 дюйма будет равно 215,9 мм, так как оба они хранятся как 215900 µм. Например, служба поиска может сопоставить атрибуты разрешения на основе равенства их сериализованных представлений независимо от единиц, в которых они были созданы. Использование целых чисел для внутреннего хранения позволяет выполнять точные сравнения на равенство, что не гарантируется при использовании внутреннего представления с плавающей запятой. Обратите внимание, что если вы ищете печатную продукцию размера US Letter в метрических единицах, вам нужно искать размер печатной продукции 215,9 x 279,4 мм; округление до целых 216 x 279 мм не будет совпадать.

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

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

Поля

Модификатор и тип Поле и описание
static int INCH

Значение для обозначения единиц измерения дюймов (in).

static int MM

Значение для обозначения единиц измерения миллиметров (мм).

Конструкторы

Модификатор Конструктор и описание
protected Size2DSyntax(float x, float y, int units)

Создать новый атрибут размера в двух измерениях из заданных значений с плавающей запятой.

protected Size2DSyntax(int x, int y, int units)

Создать новый атрибут размера в двух измерениях из заданных целых значений.

Методы

Модификатор и тип Метод и описание
boolean equals(Object object)

Возвращает, эквивалентен ли этот атрибут размера в двух измерениях переданному объекту.

float[] getSize(int units)

Получить размеры этого атрибута размера в двух измерениях в заданных единицах как значения с плавающей запятой.

float getX(int units)

Возвращает размер по оси X этого атрибута размера в двух измерениях в заданных единицах как значение с плавающей запятой.

protected int getXMicrometers()

Возвращает размер по оси X этого атрибута размера в двух измерениях в единицах микрон (µм).

float getY(int units)

Возвращает размер по оси Y этого атрибута размера в двух измерениях в заданных единицах как значение с плавающей запятой.

protected int getYMicrometers()

Возвращает размер по оси Y этого атрибута размера в двух измерениях в единицах микрон (µм).

int hashCode()

Возвращает значение хэш-кода для этого атрибута размера в двух измерениях.

String toString()

Возвращает строковое представление этого атрибута размера в двух измерениях.

String toString(int units, String unitsName)

Возвращает строковое представление этого атрибута размера в двух измерениях в заданных единицах.

Методы, унаследованные от класса java.lang.Object

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

Поля

INCH

public static final int INCH

Значение для указания единиц измерения дюймов (in). На самом деле это коэффициент преобразования, с помощью которого дюймы умножаются для получения мкм (25400).

См. также:
Значения постоянных полей

MM

public static final int MM

Значение для указания единиц миллиметров (мм). На самом деле это коэффициент преобразования, с помощью которого миллиметры умножаются для получения мкм (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, имя единиц в результат не добавляется.
Возвращает:
Строковое представление этого атрибута размера двухмерного размера.
Исключения:
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 - Объект для сравнения.
Возвращает:
True, если object эквивалентен этому атрибуту размера двухмерного размера, false в противном случае.
См. также:
Object.hashCode(), HashMap

hashCode

public int hashCode()

Возвращает значение хэш-кода для этого атрибута размера двухмерного размера.

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

toString

public String toString()

Возвращает строковое представление этого атрибута размера двухмерного размера. Строка имеет вид "XxY um", где X — размер X, а Y — размер Y. Значения приводятся в внутренних единицах микрометров.

Переопределяет:
toString в классе Object
Возвращает:
строковое представление объекта.

getXMicrometers

protected int getXMicrometers()

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

Возвращает:
Размер X (мкм).

getYMicrometers

protected int getYMicrometers()

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

Возвращает:
Размер Y (мкм).

© 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.

Spec-Zone.ru

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