Spec-Zone .ru
спецификации, руководства, описания, API
|
public class ImageWriteParam extends IIOParam
ImageWriter
. Плагин для определенного формата изображения может определить подкласс этого класса, и возвратить объекты того класса от getDefaultWriteParam
метод ImageWriter
реализация. Например, встроенный плагин писателя JPEG возвратит экземпляры javax.imageio.plugins.jpeg.JPEGImageWriteParam
.
Область изображения, которое будет записано, определяется первым пересечением фактических границ изображения с прямоугольником, определенным IIOParam.setSourceRegion
, если любой. Если у получающегося прямоугольника будут ширина или высота нуля, то писатель бросит IIOException
. Если пересечение будет непусто, то запись будет начинаться с первым подвыбранным пикселем и включать дополнительные пиксели в пределах пересеченных границ согласно горизонтали и вертикальным факторам подвыборки, определенным
. IIOParam.setSourceSubsampling
Отдельные функции, такие как мозаичное размещение, прогрессивное кодирование, и сжатие могут быть установлены в одном из четырех режимов. MODE_DISABLED
отключает опции; MODE_DEFAULT
активирует опцию с управляемыми писателем значениями параметра; MODE_EXPLICIT
активирует опцию и позволяет использование a set
метод, чтобы обеспечить дополнительные параметры; и MODE_COPY_FROM_METADATA
копирует соответствующие значения параметра с потока и объектов метаданных изображения, которые передают писателю. Значение по умолчанию для всех функций MODE_COPY_FROM_METADATA
. Нестандартные функции, предоставленные в подклассах, поощряются, но не требуются использовать подобную схему.
Сменные писатели могут расширить функциональность ImageWriteParam
обеспечивая подкласс, который реализует дополнительные, сменные определенные интерфейсы. Это до плагина к документу, какие интерфейсы доступны и как они должны использоваться. Писатели тихо проигнорируют любые расширенные функции ImageWriteParam
подкласс которого они не знают. Кроме того, они могут проигнорировать любые дополнительные функции, которые они обычно отключают, создавая их собственное ImageWriteParam
экземпляры через getDefaultWriteParam
.
Отметьте, что, если метод запроса не существует для возможности, он должен поддерживаться всеми ImageWriter
реализации (например, прогрессивное кодирование является дополнительным, но подвыборка должна поддерживаться).
ImageReadParam
Модификатор и Тип | Поле и Описание |
---|---|
protected boolean |
canOffsetTiles
A
boolean это true если это ImageWriteParam позволяет размещать параметры смещения сетки рядом, которые будут установлены. |
protected boolean |
canWriteCompressed
A
boolean это true если этот писатель может записать изображения, используя сжатие. |
protected boolean |
canWriteProgressive
A
boolean это true если это ImageWriteParam позволяет изображениям быть записанными как прогрессивная последовательность увеличивающихся качественных передач. |
protected boolean |
canWriteTiles
A
boolean это true если это ImageWriteParam позволяет ширине мозаики и параметрам высоты мозаики быть установленной. |
protected int |
compressionMode
Режим, управляющий настройками сжатия, которые должны быть установлены в один из четырех
MODE_* значения. |
protected float |
compressionQuality
A
float содержа текущую качественную установку сжатия. |
protected String |
compressionType
A
String содержа имя текущего типа сжатия, или null если ни один не устанавливается. |
protected String[] |
compressionTypes
Массив
String s содержащий имена доступных типов сжатия. |
protected Locale |
локаль
A
Locale использоваться, чтобы локализовать имена типов сжатия и качественные описания, или null использовать значение по умолчанию Locale . |
static int |
MODE_COPY_FROM_METADATA
Постоянная величина, которую можно передать в методы такой как
setTilingMode , setProgressiveMode , или setCompressionMode активировать ту опцию для будущих записей. |
static int |
MODE_DEFAULT
Постоянная величина, которую можно передать в методы такой как
setTilingMode , setProgressiveMode , и setCompressionMode активировать ту опцию для будущих записей. |
static int |
MODE_DISABLED
Постоянная величина, которую можно передать в методы такой как
setTilingMode , setProgressiveMode , и setCompressionMode отключать опцию для будущих записей. |
static int |
MODE_EXPLICIT
Постоянная величина, которую можно передать в методы такой как
setTilingMode или setCompressionMode активировать опцию для будущих записей. |
protected Dimension[] |
preferredTileSizes
Массив привилегированных пар диапазона размера мозаики.
|
protected int |
progressiveMode
Режим, управляющий прогрессивным кодированием, которое должно быть установлено в один из четырех
MODE_* значения, кроме MODE_EXPLICIT . |
protected int |
tileGridXOffset
Количество, которым начало координат сетки мозаики должно быть смещено горизонтально от источника изображения, если мозаичное размещение было установлено, или 0 иначе.
|
protected int |
tileGridYOffset
Количество, которым начало координат сетки мозаики должно быть смещено вертикально от источника изображения, если мозаичное размещение было установлено, или 0 иначе.
|
protected int |
tileHeight
Высота каждой мозаики, если мозаичное размещение было установлено, или 0 иначе.
|
protected int |
tileWidth
Ширина каждой мозаики, если мозаичное размещение было установлено, или 0 иначе.
|
protected int |
tilingMode
Настройки мозаичного размещения управления режима, которые Должны быть установлены в один из четырех
MODE_* значения. |
protected boolean |
tilingSet
A
boolean это true если размещающие рядом параметры были определены. |
controller, defaultController, destinationOffset, destinationType, sourceBands, sourceRegion, sourceXSubsampling, sourceYSubsampling, subsamplingXOffset, subsamplingYOffset
Модификатор | Конструктор и Описание |
---|---|
protected |
ImageWriteParam()
Создает пустое
ImageWriteParam . |
|
ImageWriteParam(Locale locale)
Конструкции
ImageWriteParam набор, чтобы использовать данный Locale . |
Модификатор и Тип | Метод и Описание |
---|---|
boolean |
canOffsetTiles()
Возвраты
true если писатель может выполнить мозаичное размещение с ненулевыми смещениями сетки при записи. |
boolean |
canWriteCompressed()
Возвраты
true если этот писатель поддерживает сжатие. |
boolean |
canWriteProgressive()
Возвраты
true если писатель может выписать изображения как серию передач прогрессивно увеличивающегося качества. |
boolean |
canWriteTiles()
Возвраты
true если писатель может выполнить мозаичное размещение при записи. |
float |
getBitRate(float quality)
Возвраты a
float указание на оценку числа битов выходных данных для каждого бита ввода отображает данные на данном уровне качества. |
int |
getCompressionMode()
Возвращает текущий режим сжатия, если сжатие поддерживается.
|
float |
getCompressionQuality()
Возвращает текущую качественную установку сжатия.
|
Строка[] |
getCompressionQualityDescriptions()
Возвращает массив
String s, который может использоваться наряду с getCompressionQualityValues как часть пользовательского интерфейса для установки или отображения уровня качества сжатия. |
float[] |
getCompressionQualityValues()
Возвращает массив
float s, который может использоваться наряду с getCompressionQualityDescriptions как часть пользовательского интерфейса для установки или отображения уровня качества сжатия. |
Строка |
getCompressionType()
Возвращается в настоящий момент тип сжатия набора, или
null если ни один не был установлен. |
Строка[] |
getCompressionTypes()
Возвращает список доступных типов сжатия, как массив или
String s, или null если тип сжатия не может быть выбран, используя эти интерфейсы. |
Локаль |
getLocale()
Возвращается в настоящий момент набор
Locale , или null если только значение по умолчанию Locale поддерживается. |
Строка |
getLocalizedCompressionTypeName()
Возвращает локализованную версию имени текущего типа сжатия, используя
Locale возвращенный getLocale . |
Размерность[] |
getPreferredTileSizes()
Возвращает массив
Dimension s указание на юридический размер располагается для мозаик, поскольку они будут закодированы в выходном файле или потоке. |
int |
getProgressiveMode()
Возвращает текущий режим для того, чтобы записать поток прогрессивным способом.
|
int |
getTileGridXOffset()
Возвращает горизонтальное смещение сетки мозаики изображения, как оно будет записано потоку вывода.
|
int |
getTileGridYOffset()
Возвращает вертикальное смещение сетки мозаики изображения, как оно будет записано потоку вывода.
|
int |
getTileHeight()
Возвращает высоту каждой мозаики в изображении, как это будет записано потоку вывода.
|
int |
getTileWidth()
Возвращает ширину каждой мозаики в изображении, как это будет записано потоку вывода.
|
int |
getTilingMode()
Возвращает текущий режим мозаичного размещения, если мозаичное размещение поддерживается.
|
boolean |
isCompressionLossless()
Возвраты
true если текущий тип сжатия обеспечивает сжатие без потерь. |
void |
setCompressionMode(int mode)
Определяет, должно ли сжатие быть выполнено, и раз так как должны быть определены параметры сжатия.
|
void |
setCompressionQuality(float quality)
Устанавливает качество сжатия в значение между
0 и 1 . |
void |
setCompressionType(String compressionType)
Устанавливает тип сжатия в одно из значений, обозначенных
getCompressionTypes . |
void |
setProgressiveMode(int mode)
Определяет, что писатель должен выписать изображение в прогрессивном режиме так, что, поток будет содержать серию сканирований увеличивающегося качества.
|
void |
setTiling(int tileWidth, int tileHeight, int tileGridXOffset, int tileGridYOffset)
Определяет, что изображение должно быть размещено рядом в потоке вывода.
|
void |
setTilingMode(int mode)
Определяет, будет ли изображение размещено рядом в потоке вывода и, если это будет, как параметры мозаичного размещения будут определены.
|
void |
unsetCompression()
Удаляет любой предыдущий тип сжатия и качественные настройки.
|
void |
unsetTiling()
Удаляет любые предыдущие параметры сетки мозаики, определенные звонками
setTiling . |
activateController, getController, getDefaultController, getDestinationOffset, getDestinationType, getSourceBands, getSourceRegion, getSourceXSubsampling, getSourceYSubsampling, getSubsamplingXOffset, getSubsamplingYOffset, hasController, setController, setDestinationOffset, setDestinationType, setSourceBands, setSourceRegion, setSourceSubsampling
public static final int MODE_DISABLED
setTilingMode
, setProgressiveMode
, и setCompressionMode
отключать опцию для будущих записей. Таким образом, когда этот режим будет установлен, поток не будет размещен рядом, не прогрессивный, или сжат, и соответствующие методы средства доступа бросят IllegalStateException
.public static final int MODE_DEFAULT
setTilingMode
, setProgressiveMode
, и setCompressionMode
активировать ту опцию для будущих записей. Таким образом, когда этому режиму включат, поток будет размещен рядом, прогрессивный, или сжат согласно заметному значению по умолчанию, выбранному внутренне писателем сменным зависимым способом, и соответствующие методы средства доступа бросят IllegalStateException
.public static final int MODE_EXPLICIT
setTilingMode
или setCompressionMode
активировать опцию для будущих записей. Таким образом, когда этот режим будет установлен, поток будет размещен рядом или сжат согласно дополнительной информации, предоставленной соответствию set
методы в этом классе и восстановимый от соответствия get
методы. Отметьте, что этот режим не поддерживается для прогрессивного вывода.public static final int MODE_COPY_FROM_METADATA
setTilingMode
, setProgressiveMode
, или setCompressionMode
активировать ту опцию для будущих записей. Таким образом, когда этому режиму включат, поток будет размещен рядом, прогрессивный, или сжат основанный на содержании потока и/или метаданных изображения, которые передают в операцию записи, и любые соответствующие методы средства доступа бросят IllegalStateException
. Это - режим по умолчанию для всех функций, так, чтобы чтение включая метаданные, сопровождаемые записью включая метаданные, сохранило такую большую информацию насколько возможно.
protected boolean canWriteTiles
boolean
это true
если это ImageWriteParam
позволяет ширине мозаики и параметрам высоты мозаики быть установленной. По умолчанию значение false
. Подклассы должны установить значение вручную. Подклассы, которые не поддерживают мозаики записи, должны гарантировать, что это значение устанавливается в false
.
protected int tilingMode
MODE_*
значения. Значение по умолчанию MODE_COPY_FROM_METADATA
. Подклассы, которые не делают мозаик записи, могут проигнорировать это значение.
protected Dimension[] preferredTileSizes
null
, который указывает, что нет никаких привилегированных размеров. Если значение не -null
, это должно иметь даже длина по крайней мере двух. Подклассы, которые не поддерживают мозаики записи, могут проигнорировать это значение.
getPreferredTileSizes()
protected boolean tilingSet
boolean
это true
если размещающие рядом параметры были определены. Подклассы, которые не поддерживают мозаики записи, могут проигнорировать это значение.
protected int tileWidth
Подклассы, которые не поддерживают мозаичное размещение, могут проигнорировать это значение.
protected int tileHeight
0
. Подклассы, которые не поддерживают мозаичное размещение, могут проигнорировать это значение.
protected boolean canOffsetTiles
boolean
это true
если это ImageWriteParam
позволяет размещать параметры смещения сетки рядом, которые будут установлены. По умолчанию значение false
. Подклассы должны установить значение вручную. Подклассы, которые не поддерживают мозаики записи, или что запись supprt, но не смещение мозаик должна гарантировать, что это значение устанавливается в false
.
protected int tileGridXOffset
0
. Подклассы, которые не поддерживают мозаики смещения, могут проигнорировать это значение.
protected int tileGridYOffset
0
. Подклассы, которые не поддерживают мозаики смещения, могут проигнорировать это значение.
protected boolean canWriteProgressive
boolean
это true
если это ImageWriteParam
позволяет изображениям быть записанными как прогрессивная последовательность увеличивающихся качественных передач. По умолчанию значение false
. Подклассы должны установить значение вручную. Подклассы, которые не поддерживают прогрессивное кодирование, должны гарантировать, что это значение устанавливается в false
.
protected int progressiveMode
MODE_*
значения, кроме MODE_EXPLICIT
. Значение по умолчанию MODE_COPY_FROM_METADATA
. Подклассы, которые не поддерживают прогрессивное кодирование, могут проигнорировать это значение.
protected boolean canWriteCompressed
boolean
это true
если этот писатель может записать изображения, используя сжатие. По умолчанию значение false
. Подклассы должны установить значение вручную. Подклассы, которые не поддерживают сжатие, должны гарантировать, что это значение устанавливается в false
.
protected int compressionMode
MODE_*
значения. Значение по умолчанию MODE_COPY_FROM_METADATA
. Подклассы, которые не поддерживают сжатие, могут проигнорировать это значение.
protected String[] compressionTypes
String
s содержащий имена доступных типов сжатия. Подклассы должны установить значение вручную. Подклассы, которые не поддерживают сжатие, могут проигнорировать это значение.
protected String compressionType
String
содержа имя текущего типа сжатия, или null
если ни один не устанавливается. Подклассы, которые не поддерживают сжатие, могут проигнорировать это значение.
protected float compressionQuality
float
содержа текущую качественную установку сжатия. Начальное значение 1.0F
. Подклассы, которые не поддерживают сжатие, могут проигнорировать это значение.
protected Locale locale
Locale
использоваться, чтобы локализовать имена типов сжатия и качественные описания, или null
использовать значение по умолчанию Locale
. Подклассы должны установить значение вручную.protected ImageWriteParam()
ImageWriteParam
. Это до подкласса, чтобы установить переменные экземпляра должным образом.public ImageWriteParam(Locale locale)
ImageWriteParam
набор, чтобы использовать данный Locale
.locale
- a Locale
использоваться, чтобы локализовать имена типов сжатия и качественные описания, или null
.public Locale getLocale()
Locale
, или null
если только значение по умолчанию Locale
поддерживается.Locale
, или null
.public boolean canWriteTiles()
true
если писатель может выполнить мозаичное размещение при записи. Если этот метод возвращается false
, тогда setTiling
бросит UnsupportedOperationException
.true
если писатель поддерживает мозаичное размещение.canOffsetTiles()
, setTiling(int, int, int, int)
public boolean canOffsetTiles()
true
если писатель может выполнить мозаичное размещение с ненулевыми смещениями сетки при записи. Если этот метод возвращается false
, тогда setTiling
бросит UnsupportedOperationException
если параметрами смещения сетки не является оба нуль. Если canWriteTiles
возвраты false
, этот метод возвратится false
также.true
если писатель поддерживает ненулевые смещения мозаики.canWriteTiles()
, setTiling(int, int, int, int)
public void setTilingMode(int mode)
MODE_DISABLED
- Изображение не будет размещено рядом. setTiling
бросит IllegalStateException
. MODE_DEFAULT
- Изображение будет размещено рядом, используя параметры по умолчанию. setTiling
бросит IllegalStateException
. MODE_EXPLICIT
- Изображение будет размещено рядом согласно параметрам, поданным setTiling
метод. Любой ранее установленные параметры мозаичного размещения отбрасывается. MODE_COPY_FROM_METADATA
- Изображение будет соответствовать объекту метаданных, который передают в к записи. setTiling
бросит IllegalStateException
. mode
- Режим, чтобы использовать для того, чтобы разместить рядом.UnsupportedOperationException
- если canWriteTiles
возвраты false
.IllegalArgumentException
- если mode
не один из упомянутых выше режимов.setTiling(int, int, int, int)
, getTilingMode()
public int getTilingMode()
UnsupportedOperationException
.UnsupportedOperationException
- если canWriteTiles
возвраты false
.setTilingMode(int)
public Dimension[] getPreferredTileSizes()
Dimension
s указание на юридический размер располагается для мозаик, поскольку они будут закодированы в выходном файле или потоке. Возвращенный массив является копией. Информация возвращается как ряд пар; первый элемент пары содержит (содержащую) минимальную ширину и высоту, и второй элемент содержит (содержащую) максимальную ширину и высоту. Вместе, каждая пара определяет допустимый диапазон размеров. Чтобы определить фиксированный размер, используйте ту же самую ширину и высоту для обоих элементов. Определить произвольный диапазон, значение null
используется вместо фактического массива Dimension
s.
Если никакой массив не определяется на конструкторе, но мозаичное размещение позволяется, то этот метод возвращается null
.
Dimension
s с даже длиной по крайней мере двух, или null
.UnsupportedOperationException
- если плагин не поддерживает мозаичное размещение.public void setTiling(int tileWidth, int tileHeight, int tileGridXOffset, int tileGridYOffset)
tileWidth
и tileHeight
параметры определяют ширину и высоту мозаик в файле. Если ширина мозаики или высота больше чем ширина или высота изображения, изображение не размещается рядом в той размерности. Если canOffsetTiles
возвраты false
, тогда tileGridXOffset
и tileGridYOffset
параметры должны быть нулем.
tileWidth
- ширина каждой мозаики.tileHeight
- высота каждой мозаики.tileGridXOffset
- горизонтальное смещение сетки мозаики.tileGridYOffset
- вертикальное смещение сетки мозаики.UnsupportedOperationException
- если плагин не поддерживает мозаичное размещение.IllegalStateException
- если режим мозаичного размещения не MODE_EXPLICIT
.UnsupportedOperationException
- если плагин не поддерживает смещения сетки, и смещения сетки не являются оба нулем.IllegalArgumentException
- если размер мозаики не в пределах одного из допустимых диапазонов, возвращенных getPreferredTileSizes
.IllegalArgumentException
- если tileWidth
или tileHeight
меньше чем или равно 0.canWriteTiles
, canOffsetTiles
, getTileWidth()
, getTileHeight()
, getTileGridXOffset()
, getTileGridYOffset()
public void unsetTiling()
setTiling
. Реализация по умолчанию устанавливает переменные экземпляра tileWidth
, tileHeight
, tileGridXOffset
, и tileGridYOffset
к 0
.
UnsupportedOperationException
- если плагин не поддерживает мозаичное размещение.IllegalStateException
- если режим мозаичного размещения не MODE_EXPLICIT
.setTiling(int, int, int, int)
public int getTileWidth()
IllegalStateException
бросается.UnsupportedOperationException
- если плагин не поддерживает мозаичное размещение.IllegalStateException
- если режим мозаичного размещения не MODE_EXPLICIT
.IllegalStateException
- если параметры мозаичного размещения не были установлены.setTiling(int, int, int, int)
, getTileHeight()
public int getTileHeight()
IllegalStateException
бросается.UnsupportedOperationException
- если плагин не поддерживает мозаичное размещение.IllegalStateException
- если режим мозаичного размещения не MODE_EXPLICIT
.IllegalStateException
- если параметры мозаичного размещения не были установлены.setTiling(int, int, int, int)
, getTileWidth()
public int getTileGridXOffset()
IllegalStateException
бросается.UnsupportedOperationException
- если плагин не поддерживает мозаичное размещение.IllegalStateException
- если режим мозаичного размещения не MODE_EXPLICIT
.IllegalStateException
- если параметры мозаичного размещения не были установлены.setTiling(int, int, int, int)
, getTileGridYOffset()
public int getTileGridYOffset()
IllegalStateException
бросается.UnsupportedOperationException
- если плагин не поддерживает мозаичное размещение.IllegalStateException
- если режим мозаичного размещения не MODE_EXPLICIT
.IllegalStateException
- если параметры мозаичного размещения не были установлены.setTiling(int, int, int, int)
, getTileGridXOffset()
public boolean canWriteProgressive()
true
если писатель может выписать изображения как серию передач прогрессивно увеличивающегося качества.true
если писатель поддерживает прогрессивное кодирование.setProgressiveMode(int)
, getProgressiveMode()
public void setProgressiveMode(int mode)
UnsupportedOperationException
будет брошен. Параметр режима определяет, как параметры прогрессии выбираются, и должны быть также MODE_DISABLED
, MODE_COPY_FROM_METADATA
, или MODE_DEFAULT
. Иначе IllegalArgumentException
бросается.
Режимы интерпретируются следующим образом:
MODE_DISABLED
- Никакая прогрессия. Используйте это, чтобы выключить progession. MODE_COPY_FROM_METADATA
- Выходное изображение будет использовать любые параметры прогрессии, находятся в объектах метаданных, которые передают в писателя. MODE_DEFAULT
- Изображение будет записано прогрессивно с параметрами, выбранными писателем. Значение по умолчанию MODE_COPY_FROM_METADATA
.
mode
- Режим для того, чтобы установить прогрессию в потоке вывода.UnsupportedOperationException
- если писатель не поддерживает прогрессивное кодирование.IllegalArgumentException
- если mode
не один из упомянутых выше режимов.getProgressiveMode()
public int getProgressiveMode()
UnsupportedOperationException
- если писатель не поддерживает прогрессивное кодирование.setProgressiveMode(int)
public boolean canWriteCompressed()
true
если этот писатель поддерживает сжатие.true
если писатель поддерживает сжатие.public void setCompressionMode(int mode)
mode
параметром должен быть один из этих четырех режимов, интерпретируемых следующим образом: MODE_DISABLED
- Если режим устанавливается в MODE_DISABLED
, методы, которые запрашивают или изменяют тип сжатия или параметры, бросят IllegalStateException
(если сжатие обычно поддерживается плагином). Некоторые писатели, такие как JPEG, обычно не предлагают несжатый, выводят. В этом случае, пытаясь установить режим в MODE_DISABLED
бросит UnsupportedOperationException
и режим не будет изменен. MODE_EXPLICIT
- Сжатие используя тип сжатия и качественные настройки определяется в этом ImageWriteParam
. Отбрасываются любые ранее установленные параметры сжатия. MODE_COPY_FROM_METADATA
- Использование любые параметры сжатия определяется в объектах метаданных, которые передают в писателю. MODE_DEFAULT
- Используйте параметры сжатия по умолчанию. Значение по умолчанию MODE_COPY_FROM_METADATA
.
mode
- Режим для того, чтобы установить сжатие в потоке вывода.UnsupportedOperationException
- если писатель не поддерживает сжатие, или не поддерживает требуемый режим.IllegalArgumentException
- если mode
не один из упомянутых выше режимов.getCompressionMode()
public int getCompressionMode()
UnsupportedOperationException
- если писатель не поддерживает сжатие.setCompressionMode(int)
public String[] getCompressionTypes()
String
s, или null
если тип сжатия не может быть выбран, используя эти интерфейсы. Массив возвратился, копия. Если писатель только предлагает единственную, обязательную форму сжатия, не необходимо обеспечить любые именованные типы сжатия. Названный типами сжатия должен только использоваться, где пользователь в состоянии сделать значимый выбор между различными схемами.
Проверки реализации по умолчанию, если сжатие поддерживается и бросает UnsupportedOperationException
если нет. Иначе, это возвращает клона compressionTypes
переменная экземпляра, если это не -null
, или иначе возвраты null
.
String
s содержащий (нелокализованные) имена доступных типов сжатия, или null
.UnsupportedOperationException
- если писатель не поддерживает сжатие.public void setCompressionType(String compressionType)
getCompressionTypes
. Если значение null
в передают, любая предыдущая установка удаляется. Реализация по умолчанию проверяет, поддерживается ли сжатие, и режим сжатия MODE_EXPLICIT
. Если так, это вызывает getCompressionTypes
и проверки, если compressionType
одно из юридических значений. Если это, compressionType
переменная экземпляра устанавливается. Если compressionType
null
, переменная экземпляра устанавливается, не выполняя проверки.
compressionType
- один из String
s возвращенный getCompressionTypes
, или null
удалить любую предыдущую установку.UnsupportedOperationException
- если писатель не поддерживает сжатие.IllegalStateException
- если режим сжатия не MODE_EXPLICIT
.UnsupportedOperationException
- если нет никаких устанавливаемых типов сжатия.IllegalArgumentException
- если compressionType
не -null
но не одно из значений, возвращенных getCompressionTypes
.getCompressionTypes()
, getCompressionType()
, unsetCompression()
public String getCompressionType()
null
если ни один не был установлен. Тип возвращается как a String
из числа возвращенных getCompressionTypes
. Если никакой тип сжатия не был установлен, null
возвращается. Реализация по умолчанию проверяет, поддерживается ли сжатие, и режим сжатия MODE_EXPLICIT
. Если так, это возвращает значение compressionType
переменная экземпляра.
String
, или null
если никакой тип не устанавливается.UnsupportedOperationException
- если писатель не поддерживает сжатие.IllegalStateException
- если режим сжатия не MODE_EXPLICIT
.setCompressionType(java.lang.String)
public void unsetCompression()
Реализация по умолчанию устанавливает переменную экземпляра compressionType
к null
, и переменная экземпляра compressionQuality
к 1.0F
.
UnsupportedOperationException
- если плагин не поддерживает сжатие.IllegalStateException
- если режим сжатия не MODE_EXPLICIT
.setCompressionType(java.lang.String)
, setCompressionQuality(float)
public String getLocalizedCompressionTypeName()
Locale
возвращенный getLocale
. Реализация по умолчанию проверяет, поддерживается ли сжатие, и режим сжатия MODE_EXPLICIT
. Если так, если compressionType
non-null
значение getCompressionType
возвращается как удобство.
String
содержа локализованную версию имени текущего типа сжатия.UnsupportedOperationException
- если писатель не поддерживает сжатие.IllegalStateException
- если режим сжатия не MODE_EXPLICIT
.IllegalStateException
- если никакой тип сжатия не устанавливается.public boolean isCompressionLossless()
true
если текущий тип сжатия обеспечивает сжатие без потерь. Если плагин обеспечивает только один обязательный тип сжатия, то этот метод можно вызвать без вызова setCompressionType
сначала. Если есть многократные типы сжатия, но ни один не был установлен, IllegalStateException
бросается.
Реализация по умолчанию проверяет, поддерживается ли сжатие, и режим сжатия MODE_EXPLICIT
. Если так, если getCompressionTypes()
null
или getCompressionType()
не -null
true
возвращается как удобство.
true
если текущий тип сжатия без потерь.UnsupportedOperationException
- если писатель не поддерживает сжатие.IllegalStateException
- если режим сжатия не MODE_EXPLICIT
.IllegalStateException
- если набор юридических типов сжатия не -null
и текущий тип сжатия null
.public void setCompressionQuality(float quality)
0
и 1
. Только единственная качественная установка сжатия поддерживается по умолчанию; писатели могут обеспечить расширенные версии ImageWriteParam
то предложение больше управления. Для схем сжатия с потерями качество сжатия должно управлять компромиссом между размером файла и качеством изображения (например, выбирая таблицы квантования при записи изображений JPEG). Для схем без потерь качество сжатия может использоваться, чтобы управлять компромиссом между размером файла и время, потраченное, чтобы выполнить сжатие (например, оптимизируя горизонтальные фильтры и устанавливая уровень сжатия ZLIB при записи изображений PNG). Качественная установка сжатия 0.0 наиболее в общем интерпретируется, поскольку "высокое сжатие важно,", в то время как установка 1.0 наиболее в общем интерпретируется, поскольку "высокое качество изображения важно."
Если есть многократные типы сжатия, но ни один не был установлен, IllegalStateException
бросается.
Реализация по умолчанию проверяет, что сжатие поддерживается, и что режим сжатия MODE_EXPLICIT
. Если так, если getCompressionTypes()
возвраты null
или compressionType
не -null
это устанавливает compressionQuality
переменная экземпляра.
quality
- a float
между 0
и 1
указание на требуемый уровень качества.UnsupportedOperationException
- если писатель не поддерживает сжатие.IllegalStateException
- если режим сжатия не MODE_EXPLICIT
.IllegalStateException
- если набор юридических типов сжатия не -null
и текущий тип сжатия null
.IllegalArgumentException
- если quality
не между 0
и 1
, включительно.getCompressionQuality()
public float getCompressionQuality()
Если есть многократные типы сжатия, но ни один не был установлен, IllegalStateException
бросается.
Реализация по умолчанию проверяет, что сжатие поддерживается и что режим сжатия MODE_EXPLICIT
. Если так, если getCompressionTypes()
null
или getCompressionType()
не -null
, это возвращает значение compressionQuality
переменная экземпляра.
UnsupportedOperationException
- если писатель не поддерживает сжатие.IllegalStateException
- если режим сжатия не MODE_EXPLICIT
.IllegalStateException
- если набор юридических типов сжатия не -null
и текущий тип сжатия null
.setCompressionQuality(float)
public float getBitRate(float quality)
float
указание на оценку числа битов выходных данных для каждого бита ввода отображает данные на данном уровне качества. Значение будет обычно находиться между 0
и 1
, с меньшими значениями, указывающими на больше сжатия. Специальное значение -1.0F
используется, чтобы указать, что никакая оценка не доступна. Если есть многократные типы сжатия, но ни один не был установлен, IllegalStateException
бросается.
Реализация по умолчанию проверяет, что сжатие поддерживается, и режим сжатия MODE_EXPLICIT
. Если так, если getCompressionTypes()
null
или getCompressionType()
не -null
, и quality
в пределах границ, это возвращается -1.0
.
quality
- качественная установка, битрейт которой должен быть запрошен.-1.0F
если никакая оценка не доступна.UnsupportedOperationException
- если писатель не поддерживает сжатие.IllegalStateException
- если режим сжатия не MODE_EXPLICIT
.IllegalStateException
- если набор юридических типов сжатия не -null
и текущий тип сжатия null
.IllegalArgumentException
- если quality
не между 0
и 1
, включительно.public String[] getCompressionQualityDescriptions()
String
s, который может использоваться наряду с getCompressionQualityValues
как часть пользовательского интерфейса для установки или отображения уровня качества сжатия. String
с индексом i
обеспечивает описание диапазона уровней качества между getCompressionQualityValues[i]
и getCompressionQualityValues[i + 1]
. Отметьте что длина массива, возвращенного из getCompressionQualityValues
всегда будет одно большее чем это, возвратился из getCompressionQualityDescriptions
. Как пример, "Хорошие" строки, "Лучше", и "Лучше всего" мог быть связан с диапазонами [0, .33)
, [.33, .66)
, и [.66, 1.0]
. В этом случае, getCompressionQualityDescriptions
возвратился бы { "Good", "Better", "Best" }
и getCompressionQualityValues
возвратился бы { 0.0F, .33F, .66F, 1.0F }
.
Если никакие описания не доступны, null
возвращается. Если null
возвращается из getCompressionQualityValues
, этот метод должен также возвратиться null
.
Описания должны быть локализованы для Locale
возвращенный getLocale
, если это не -null
.
Если есть многократные типы сжатия, но ни один не был установлен, IllegalStateException
бросается.
Реализация по умолчанию проверяет, что сжатие поддерживается и что режим сжатия MODE_EXPLICIT
. Если так, если getCompressionTypes()
null
или getCompressionType()
не -null
, это возвращается null
.
String
s содержащий локализованные описания уровней качества сжатия.UnsupportedOperationException
- если писатель не поддерживает сжатие.IllegalStateException
- если режим сжатия не MODE_EXPLICIT
.IllegalStateException
- если набор юридических типов сжатия не -null
и текущий тип сжатия null
.getCompressionQualityValues()
public float[] getCompressionQualityValues()
float
s, который может использоваться наряду с getCompressionQualityDescriptions
как часть пользовательского интерфейса для установки или отображения уровня качества сжатия. См. getCompressionQualityDescriptions
для получения дополнительной информации. Если никакие описания не доступны, null
возвращается. Если null
возвращается из getCompressionQualityDescriptions
, этот метод должен также возвратиться null
.
Если есть многократные типы сжатия, но ни один не был установлен, IllegalStateException
бросается.
Реализация по умолчанию проверяет, что сжатие поддерживается и что режим сжатия MODE_EXPLICIT
. Если так, если getCompressionTypes()
null
или getCompressionType()
не -null
, это возвращается null
.
float
s указание на границы между уровнями качества сжатия как описано String
s от getCompressionQualityDescriptions
.UnsupportedOperationException
- если писатель не поддерживает сжатие.IllegalStateException
- если режим сжатия не MODE_EXPLICIT
.IllegalStateException
- если набор юридических типов сжатия не -null
и текущий тип сжатия null
.getCompressionQualityDescriptions()
Для дальнейшей ссылки API и документации разработчика, см.
Авторское право © 1993, 2011, Oracle и/или его филиалы. Все права защищены.