2011-04-14 4 views
1
ImageIO

일반 ImageWriteParam 가지는 새로운 이미지를 저장없이 (예. PNG, JPEG, GIF)을 사용 이미지 압축 알고리즘 1.0f (고화질)에 0.0f 범위 (고압축)에서 compressionQuality 파라미터를 명시 적으로 설정을 지원한다.IIOMetadata에서 이미지 압축 품질을 얻는 방법은 무엇입니까?

  • 기존 이미지에서 compressionQuality을 읽을 방법이 있습니까?
  • compressionQuality 매개 변수는 ImageWriter에 대한 힌트 일 뿐이며 이미지의 메타 데이터에 저장되지 않습니까? 이미지 저장 소프트웨어 (예 : 김프)가 '다른 이름으로 저장'대화 상자에서 다음 옵션을 제공하는 방법은 사실입니까? Image Save As Advanced Options checkbox tooltip

나는 다른 XML 형식 (보통, 기본 및 javax_imageio_1.0 기준)의 이미지 메타 데이터를 출력 할 ImageInputStream에서 IIOMetadata를 읽고 그 metadataFormatNames을 반복 할 수 있었다. 거기에 이미지의 compressionQuality의 표시를 찾을 수는 없지만.

+1

일부 소프트웨어 및 일부 이미지 형식 *은 일반적으로 사용자가 원하는대로 할 수없는 정보를 저장할 수 있지만. jpeg를 "80 % 품질"로 저장하십시오 (그것이 무엇을 의미하든). 이제 그것을 PNG로 변환하십시오. 이제 "80 % 품질"로 저장된 JPEG로 다시 변환하십시오. 파일 형식이 품질을 저장하더라도, 당신은 무엇을 얻을 것입니까? 80 %? 그것은 완전히 틀릴 것입니다. 그것은 80 %의 80 %입니다 ("80 %"가 의미하는 바에 관계없이). 또한 일부 형식의 경우 "압축 품질"은 압축기의 품질에 따라 다릅니다. 한 프로그램의 "80 %"퍼센트는 일부 형식의 경우, 다른 프로그램의 "70 %"등일 수 있습니다. – SyntaxT3rr0r

답변

2

나는 compressionQuality가 이미지 메타 데이터와 함께 저장되어 있다고 생각하지 않는다. 이것은 처리 매개 변수 일 뿐이다.

관련 문제