|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 |
java.lang.Objectjavax.imageio.IIOParam
javax.imageio.ImageWriteParam
javax.imageio.plugins.jpeg.JPEGImageWriteParam
public class JPEGImageWriteParam
이 클래스는, 편입 JPEG 라이터 플러그 인을 사용하는 경우에 JPEG 의 수량화 테이블 및 하프맨 테이블을 설정하는 기능과 이미지용으로 최적화된 하프맨 테이블을 계산하도록(듯이) 요구하는 기능을 추가합니다. 이 클래스의 인스턴스는, 편입 JPEG ImageWriter
의 getDefaultImageWriteParam
메소드로부터 돌려주어집니다.
이것들을 추가하는 주된 목적은, 테이블의 지정을, 생략 된 스트림의 encode로 사용할 수 있도록(듯이) 하는 것입니다. 편입 JPEG 라이터는, 일반적으로의 ImageWriteParam
도 받아들입니다. 이 경우, 라이터는 필요한 테이블을 내부적으로 구축합니다.
어느 쪽의 경우도,ImageWriteParam
의 품질의 설정에는, 기본이 되는 라이브러리의 경우와 같은 의미가 있습니다. 1.00 은 모든 1 의 수량화 테이블을, 0.75 는 「표준의」시각적으로 손실이 없는 수량화 테이블을, 0.00 은 모든 255 의 수량화 테이블을 의미합니다.
생략 된 스트림의 테이블은 일반적으로, 테이블만을 포함한 생략 된 스트림을 최초로 기입하는 것으로 지정됩니다만, 어플리케이션에 따라서는 테이블이 미리 고정되고 있습니다. 이 클래스에 의해, 테이블을 클라이언트 코드로부터 직접 지정할 수 있게 됩니다.
일반적으로, 테이블은 라이터에게 건네진 IIOMetadata
객체로 지정되어 이러한 객체에 포함되는 테이블은 모두 스트림에 기입해집니다. 메타데이타에 테이블이 지정되어 있지 않은 경우는, 생략 된 스트림이 기입해집니다. 메타데이타에 테이블이 포함되지 않고,JPEGImageWriteParam
로 테이블이 지정되지 않는 경우, 생략 된 스트림은 「표준의」시각적으로 손실이 없는 테이블을 사용해 encode 됩니다. 최초로 테이블을 스트림에 기입하지 말고, 생략 된 스트림을 기입할 필요가 있는 경우는, 테이블의 지정에 이 클래스가 필요합니다. 이 클래스를 사용하기 위해서는, 라이터에게 건네진 메타데이타객체에 테이블을 포함해도, 스트림메타데이타를 제공해도 갈 수 있지 않습니다. 디폴트의 테이블의 상세한 것에 대하여는,
및 JPEGQTable
를 참조해 주세요.
JPEGHuffmanTable
라이터의 getDefaultWriteParam
메소드로부터 반환되는 디폴트의 JPEGImageWriteParam
에는 테이블은 포함되고 있지 않습니다. 디폴트의 테이블은, 라이터로부터 반환되는 디폴트의 IIOMetadata
객체에 포함되어 있습니다.
메타데이타에 테이블이 포함되고 있는 경우,JPEGImageWriteParam
로 지정되는 테이블은 무시됩니다. 게다가 테이블세트가 기입해지면(자), 같은 스트림 또는 다른 스트림에의 그 후의 기입에 대해서 그러한 테이블을 오버라이드(override) 할 수 있는 것은, 메타데이타내의 테이블 뿐입니다. 이 클래스를 사용해 새로운 테이블을 지정하기 위해서는, 라이터의
메소드를 호출할 필요가 있습니다.
reset
편입 JPEG 플러그 인의 조작의 상세한 것에 대하여는,「JPEG 메타데이타 형식의 스펙과 사용법에 관한 주기」를 참조해 주세요.
필드의 개요 |
---|
클래스 javax.imageio. ImageWriteParam 로부터 상속된 필드 |
---|
canOffsetTiles , canWriteCompressed , canWriteProgressive , canWriteTiles , compressionMode , compressionQuality , compressionType , compressionTypes , locale , MODE_COPY_FROM_METADATA , MODE_DEFAULT , MODE_DISABLED , MODE_EXPLICIT , preferredTileSizes , progressiveMode , tileGridXOffset , tileGridYOffset , tileHeight , tileWidth , tilingMode , tilingSet |
클래스 javax.imageio. IIOParam 로부터 상속된 필드 |
---|
controller , defaultController , destinationOffset , destinationType , sourceBands , sourceRegion , sourceXSubsampling , sourceYSubsampling , subsamplingXOffset , subsamplingYOffset |
생성자 의 개요 | |
---|---|
JPEGImageWriteParam (Locale locale)
JPEGImageWriteParam 를 구축합니다. |
메소드의 개요 | |
---|---|
boolean |
areTablesSet ()
현재 테이블이 설정되어 있는 경우는 true 를 돌려줍니다. |
JPEGHuffmanTable [] |
getACHuffmanTables ()
setEncodeTables 에의 직전의 호출로 설정된 AC 하프맨 테이블의 배열의 카피를 돌려줍니다. |
String [] |
getCompressionQualityDescriptions ()
압축 품질 레벨의 표시 또는 설정을 위해서(때문에), 사용자 인터페이스의 일부로서 getCompressionQualityValues 와 함께 사용할 수 있는 String 의 배열을 돌려줍니다. |
float[] |
getCompressionQualityValues ()
압축 품질 레벨의 표시 또는 설정을 위한 사용자 인터페이스의 일부로서 getCompressionQualityDescriptions 와 함께 사용할 수 있는 float 의 배열을 돌려줍니다. |
JPEGHuffmanTable [] |
getDCHuffmanTables ()
setEncodeTables 에의 직전의 호출로 설정된 DC 하프맨 테이블의 배열의 카피를 돌려줍니다. |
boolean |
getOptimizeHuffmanTables ()
setOptimizeHuffmanTables 의 직전의 호출에게 건네진 값을 돌려줍니다. |
JPEGQTable [] |
getQTables ()
setEncodeTables 에의 직전의 호출로 설정된 수량화 테이블의 배열의 카피를 돌려줍니다. |
boolean |
isCompressionLossless ()
JPEG 플러그 인은 손실의 발생하는 압축만을 지원하므로, false 를 돌려줍니다. |
void |
setEncodeTables (JPEGQTable [] qTables,
JPEGHuffmanTable [] DCHuffmanTables,
JPEGHuffmanTable [] ACHuffmanTables)
생략 된 스트림의 encode로 사용하기 위해서 수량화 테이블 및 하프맨 테이블을 설정합니다. |
void |
setOptimizeHuffmanTables (boolean optimize)
기입 처리의 일부로서 최적화된 이미지용 하프맨 테이블을 생성하도록(듯이) 라이터에 통지합니다. |
void |
unsetCompression ()
이전의 모든 압축 품질 설정을 삭제합니다. |
void |
unsetEncodeTables ()
현재 설정되어 있는 수량화 테이블 및 하프맨 테이블을 삭제합니다. |
클래스 javax.imageio. IIOParam 로부터 상속된 메소드 |
---|
activateController , getController , getDefaultController , getDestinationOffset , getDestinationType , getSourceBands , getSourceRegion , getSourceXSubsampling , getSourceYSubsampling , getSubsamplingXOffset , getSubsamplingYOffset , hasController , setController , setDestinationOffset , setDestinationType , setSourceBands , setSourceRegion , setSourceSubsampling |
클래스 java.lang. Object 로부터 상속된 메소드 |
---|
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait |
생성자 의 상세 |
---|
public JPEGImageWriteParam(Locale locale)
JPEGImageWriteParam
를 구축합니다. 타일링은 지원되지 않습니다. 프로그래시브 인코딩은 지원됩니다. 디폴트의 프로그래시브 모드는 MODE_DISABLED 입니다. JPEG 로 불리는 1 개의 압축 형식이 지원됩니다. 디폴트의 압축 품질은 0.75 입니다.
locale
- 압축 방식명과 품질 설명을 로컬라이즈 하기 위해서
슈퍼 클래스가 사용하는 Locale
,
또는 null
메소드의 상세 |
---|
public void unsetCompression()
디폴트의 구현은, 압축 품질을 0.75F
에 리셋 합니다.
ImageWriteParam
내의 unsetCompression
IllegalStateException
- 압축 모드가
MODE_EXPLICIT
가 아닌 경우ImageWriteParam.setCompressionType(java.lang.String)
,
ImageWriteParam.setCompressionQuality(float)
public boolean isCompressionLossless()
false
를 돌려줍니다.
ImageWriteParam
내의 isCompressionLossless
false
IllegalStateException
- 압축 모드가
MODE_EXPLICIT
가 아닌 경우public String [] getCompressionQualityDescriptions()
ImageWriteParam
의 기술:getCompressionQualityValues
와 함께 사용할 수 있는 String
의 배열을 돌려줍니다. 인덱스 i
를 가지는 String
는,getCompressionQualityValues[i]
로부터 getCompressionQualityValues[i + 1]
까지의 품질 레벨 범위의 개요를 제공합니다. getCompressionQualityValues
로부터 반환된 배열의 길이는,getCompressionQualityDescriptions
로부터 반환된 배열의 길이보다 , 항상 길어집니다.
예로서 캐릭터 라인 「Good」, 「Better」, 「Best」는, 범위 [0, . 33)
,[. 33, . 66)
,[. 66, 1.0]
에 관련지을 수가 있습니다. 이 경우,getCompressionQualityDescriptions
는 { "Good", "Better", "Best" }
를 돌려주어,getCompressionQualityValues
는 { 0.0F, . 33F, . 66F, 1.0F }
를 돌려줍니다.
개요를 사용할 수 없는 경우,null
가 돌려주어집니다. getCompressionQualityValues
로부터 null
가 반환되는 경우, 이 메소드는 null
도 돌려줄 필요가 있습니다.
개요는,null
가 아닌 경우,getLocale
가 돌려준 Locale
에 대해서 로컬라이즈 할 필요가 있습니다.
복수의 압축 방식이 있어, 그 어느 것도가 설정되어 있지 않은 경우,IllegalStateException
가 throw 됩니다.
디폴트 구현에서는, 압축이 지원되는지, 압축 모드가 MODE_EXPLICIT
일까를 조사합니다. 이것에 들어맞는 경우,getCompressionTypes()
가 null
때, 혹은 getCompressionType()
가 null
가 아닐 때에 null
를 돌려줍니다.
ImageWriteParam
내의 getCompressionQualityDescriptions
String
의 배열ImageWriteParam.getCompressionQualityValues()
public float[] getCompressionQualityValues()
ImageWriteParam
의 기술:getCompressionQualityDescriptions
와 함께 사용할 수 있는 float
의 배열을 돌려줍니다. 자세한 것은,getCompressionQualityDescriptions
를 참조해 주세요.
개요를 사용할 수 없는 경우,null
가 돌려주어집니다. getCompressionQualityDescriptions
로부터 null
가 반환되는 경우, 이 메소드는 null
도 돌려줄 필요가 있습니다.
복수의 압축 방식이 있어, 그 어느 것도가 설정되어 있지 않은 경우,IllegalStateException
가 throw 됩니다.
디폴트 구현에서는, 압축이 지원되는지, 압축 모드가 MODE_EXPLICIT
일까를 조사합니다. 이것에 들어맞는 경우,getCompressionTypes()
가 null
때, 혹은 getCompressionType()
가 null
가 아닐 때에 null
를 돌려줍니다.
ImageWriteParam
내의 getCompressionQualityValues
getCompressionQualityDescriptions
로부터의
String
로 기술되는,
압축 품질 레벨간의 범위를 나타낸다
float
의 배열ImageWriteParam.getCompressionQualityDescriptions()
public boolean areTablesSet()
true
를 돌려줍니다.
true
public void setEncodeTables(JPEGQTable [] qTables, JPEGHuffmanTable [] DCHuffmanTables, JPEGHuffmanTable [] ACHuffmanTables)
null
이외가 아니면 안됩니다. 하프맨 테이블의 2 개의 배열의 요소수는 같지 않으면 안됩니다. 메타데이타의 프레임 및 스캔 헤더의 테이블 지시자는, 이러한 배열의 인덱스와 동등하다라고 상정됩니다. 인수 배열은, 이 메소드에 의해 카피됩니다.
qTables
- 수량화 테이블 객체의 배열DCHuffmanTables
- 하프맨 테이블 객체의 배열ACHuffmanTables
- 하프맨 테이블 객체의 배열
IllegalArgumentException
- 몇개의 인수가 null
인지,
4 개(살)보다 많은 요소를 가지는 경우,
또는 DC 테이블과 AC 테이블의 수가 다른 경우unsetEncodeTables()
public void unsetEncodeTables()
setEncodeTables(javax.imageio.plugins.jpeg.JPEGQTable[], javax.imageio.plugins.jpeg.JPEGHuffmanTable[], javax.imageio.plugins.jpeg.JPEGHuffmanTable[])
public JPEGQTable [] getQTables()
setEncodeTables
에의 직전의 호출로 설정된 수량화 테이블의 배열의 카피를 돌려줍니다. 현재 테이블이 설정되어 있지 않은 경우는 null
를 돌려줍니다.
JPEGQTable
객체의 배열,
또는 null
setEncodeTables(javax.imageio.plugins.jpeg.JPEGQTable[], javax.imageio.plugins.jpeg.JPEGHuffmanTable[], javax.imageio.plugins.jpeg.JPEGHuffmanTable[])
public JPEGHuffmanTable [] getDCHuffmanTables()
setEncodeTables
에의 직전의 호출로 설정된 DC 하프맨 테이블의 배열의 카피를 돌려줍니다. 현재 테이블이 설정되어 있지 않은 경우는 null
를 돌려줍니다.
JPEGHuffmanTable
객체의 배열,
또는 null
setEncodeTables(javax.imageio.plugins.jpeg.JPEGQTable[], javax.imageio.plugins.jpeg.JPEGHuffmanTable[], javax.imageio.plugins.jpeg.JPEGHuffmanTable[])
public JPEGHuffmanTable [] getACHuffmanTables()
setEncodeTables
에의 직전의 호출로 설정된 AC 하프맨 테이블의 배열의 카피를 돌려줍니다. 현재 테이블이 설정되어 있지 않은 경우는 null
를 돌려줍니다.
JPEGHuffmanTable
객체의 배열,
또는 null
setEncodeTables(javax.imageio.plugins.jpeg.JPEGQTable[], javax.imageio.plugins.jpeg.JPEGHuffmanTable[], javax.imageio.plugins.jpeg.JPEGHuffmanTable[])
public void setOptimizeHuffmanTables(boolean optimize)
false
입니다. 이 플래그가 true
로 설정되어 있는 경우는, 메타데이타로 지정된 모든 테이블을 오버라이드(override) 합니다. 이것은, 이 플래그를 true
로 설정해 기입해진 이미지에는 항상 하프맨 테이블이 포함된다고 하는 것입니다.
optimize
- 기입시에 최적화된 하프맨 테이블을
생성할지 어떨지를 나타내는 boolean 치getOptimizeHuffmanTables()
public boolean getOptimizeHuffmanTables()
setOptimizeHuffmanTables
의 직전의 호출에게 건네진 값을 돌려줍니다. setOptimizeHuffmanTables
가 불려 가지 않았던 경우는 false
를 돌려줍니다.
true
setOptimizeHuffmanTables(boolean)
|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.