Класс 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 мкм. Например, служба поиска может сопоставлять атрибуты разрешения на основе равенства их сериализованных представлений независимо от единиц, в которых они были созданы. Использование целых чисел для внутреннего хранения позволяет выполнять точные сравнения на равенство, что не гарантируется, если используется внутреннее представление с плавающей точкой. Обратите внимание, что если вы ищете медиафайлы размером U.S. letter в метрических единицах, вам нужно искать медиафайл размером 215,9 × 279,4 мм; округление до целых 216 × 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) | Возвращает |
protected int | getXMicrometers() | Возвращает |
float | getY(int units) | Возвращает |
protected int | getYMicrometers() | Возвращает |
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, имя единиц не добавляется к результату - Возвращает:
-
Stringпредставление этого двухмерного атрибута размера - Исключение:
-
IllegalArgumentException- еслиunits < 1
equals
public boolean equals(Object object)
Возвращает, эквивалентен ли этот двухмерный атрибут размера переданному объекту. Для эквивалентности должны выполняться все следующие условия:
-
objectнеnull. -
objectявляется экземпляром классаSize2DSyntax Xразмер этого атрибута равенobjectразмеруX.Yразмер этого атрибута равенobjectразмеруY.
- Переопределяет:
-
equalsв классеObject - Параметры:
-
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 размер. Значения приводятся во внутренних единицах измерения — микрометрах.
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.
https://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/javax/print/attribute/Size2DSyntax.html