javax.imageio を使用して PNG 画像を読み込もうとしています。次に、ビット深度と色タイプのメタ データを抽出します。
今私は使用しています:
Iterator<ImageReader> itr = ImageIO.getImageReaders(stream);
while(itr.hasNext())
{
ImageReader reader = itr.next();
reader.setInput(stream);
IIOMetadata md = reader.getImageMetadata(0);
}
しかし、この時点の後、私は立ち往生しています。MetaData を読み取る唯一の方法は、 を使用して XML ツリーに変換することmd.getAsTree
ですが、関心のある 2 つのフィールドを見つけるためだけにツリー全体を反復処理するのは非常に非効率的です。
それらのフィールドのみを効率的な方法 (ハッシュテーブルなど) で取得する方法はありますか?