java命名空间javax.imageio类imagewriteparam的类成员方法:
setcompressionquality定义及介绍
本文导语:
setcompressionquality
public void setcompressionquality(float quality)
将压缩质量设置为 0 和 1 之间的某个值。默认情况下,只支持一种压缩质量设置;writer 可以提供扩展的 imagewriteparam,其提供了更多控制。对于有损失的压缩方案,压缩质...
setcompressionquality
public void setcompressionquality(float quality)
- 将压缩质量设置为
0
和 1
之间的某个值。默认情况下,只支持一种压缩质量设置;writer 可以提供扩展的 imagewriteparam
,其提供了更多控制。对于有损失的压缩方案,压缩质量应该控制文件大小与图像质量之间的权衡(例如,通过在写入 jpeg 图像时选择量化表)。对于无损失方案,可以使用压缩质量控制文件大小与执行压缩所用时间之间的权衡(例如,通过在写入 png 图像时优化行过滤器并设置 zlib 压缩级别)。
压缩质量为 0.0 通常被解释为“高度压缩很重要”,而该设置为 1.0 通常被解释为“高图像质量很重要”。
如果有多个压缩类型,但没有设置任何一种压缩类型,则抛出 illegalstateexception
。
默认实现检查是否支持压缩,以及压缩模式是否为 mode_explicit
。如果是这样,而 getcompressiontypes()
返回 null
或 compressiontype
为非 null
,则设置 compressionquality
实例变量。
- 参数:
quality
- 指示所需质量级别的 0
与 1
之间的一个 float
值。
- 抛出:
unsupportedoperationexception
- 如果 writer 不支持压缩。
illegalstateexception
- 如果压缩模式不是 mode_explicit
。
illegalstateexception
- 如果合法压缩类型集为非 null
并且当前压缩类型为 null
。
illegalargumentexception
- 如果 quality
不在 0
与 1
(包括两者)之间。- 另请参见:
getcompressionquality()