問題タブ [javax.imageio]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 透明度のあるJavaBufferedImageでピクセルカラーを読み取る方法
私は次のようにBufferedImageのピクセルカラーを読んでいます:
これで、透明度のあるpngを除いて、これは正常に機能します。x、yが色のない透明なピクセルを参照している場合でも、画像の他の場所で使用されているのと同じ色である色を読み取ります。
ピクセルが実際に透明で色が付いていないことを検出するにはどうすればよいですか?
ありがとう
java - Java (ImageIO.write()) を使用して PNG を JPG に変換する際の問題
ImageIO.write() を使用して PNG ファイルを JPG に変換しています。何らかの理由で、結果の画像の上にピンクのレイヤーが表示されます。私は解決策を広範囲に探しましたが、何も見つかりませんでした。このコードは、PNG 以外のすべての種類の画像で機能します。
java - PNGからJPGへのJava ImageIOの問題
以下の両方のコード行を試しましたが、役に立ちませんでした。このコードは jpg または gif では正常に機能しますが、png の場合は画像がピンク色になります。
他の誰かがこの問題に遭遇しますか? 私は解決策を見つけることができませんでした。
java - IndexedColorModelの色の数を減らす簡単な方法はありますか?
大きな8ビットのPNG画像があります。私はJavaを使用して、画像を32x32の小さな画像にスライスしています。私はJavaを使用ImageIO
してPNGをにロードしてBufferedImage
からそれをと呼びますgetSubimage(x, y, 32, 32)
。次に、ImageIO
各タイルをPNGとして書き出すために使用します。
問題は、結果の画像がIndexColorModel
元の画像と同じになることです。たとえば、1つの32x32タイルには合計8色しかありませんが、元の画像の100色すべてのカラーモデルが含まれています。
IndexColorModel
PNGを書き出す前に、32x32タイルから未使用の色を削除したいと思います。画像に使用されていない色のカラーデータを含めても意味がないので、できるだけ小さくしたいと思います。
これを行うための組み込みのメカニズムはありますか、または誰かが私に変更/削減する(簡単な)方法を教えてもらえColorModel
ますか?
ありがとう!
java - ImageIO 読み取りはアンチエイリアススケーリングを意味しますか?
Java の内部 ImageFetcher を、ImageIO を使用した独自の実装に置き換えました。これらの画像を使用する当社のソフトウェアの一部の画像レンダラーは、アンチエイリアスされていない画像ではなく、アンチエイリアスされたスケーリングされた画像を描画するようになりました。唯一の変更点は、Toolkit-Images ではなく BufferedImages になったイメージのソースです。
問題は、違いはどこにあるのかということです。画像がアンチエイリアスでスケーリングされるのはどのプロパティですか? アンチエイリアス キーは、ペイントするグラフィックのみに依存すると常に考えていましたが、これは明らかに間違っています。
ちなみに、残念ながらレンダラーを変更することはできません。
java - Java ImageIO 標準ライブラリを使用して TIFF イメージ ファイルを読み書きできない
TIFF 画像をどうすればよいかわかりませんが、そのままの Java 標準 ImageIO ライブラリを使用してそれらを読み書きすることはできません。何かご意見は?
ありがとう。
java - Java キャスティング / クラスローダーの問題
問題の単純化されたバージョンは次のとおりです。
常にではありませんが、例外をトリガーすることがあります
これはどのように可能ですか?JAI imageio がネイティブ lib であるという事実と関係があると思いますが、どのようにこれが起こるのでしょうか? 私はおそらく何かが欠けていますが、何ですか?
元のコードはこちら
そして元の例外
java - Java ImageIO: PNG-24 ファイルを PNG-8 に変換できますか?
シナリオは次のとおりです。webapp のユーザーは、独自のロゴ画像、背景色、および背景画像を選択して Web サイトをカスタマイズできます。
問題は、IE6 が透過 PNG をサポートしていないことです。私はいくつかのクライアント側のソリューションを試しましたが、すべてがいずれかの側面で不十分です (ほとんどは css プロパティをサポートしていませんbackground-repeat
)。
サーバー上に 2 つの個別の画像を作成する代替ソリューションを探しています。1 つは最新の透明な png 準拠のブラウザー用で、もう 1 つは IE6 用です。
質問は、でこれを達成できImageIO
ますか? 基本的に、画像が PNG-24 形式であるかどうかを検出し、それを PNG-8 (IE6 でサポートされている) に変換します。