リソース画像の読み込みについて

52 views
Skip to first unread message

kambayashi

unread,
Sep 26, 2008, 10:11:16 AM9/26/08
to Android-SDK-Japan
android sdk 1.0 Release1でリソースから画像を読み込もうとしているのですが、
アルファが0xFFではないピクセルのデータが正しく読み込めません。
アルファが0xFFの部分は問題なく読めるので、バグなのかなという気もするのですが、
問題なく読めている方いましたら、読み込み方を教えてください。
以下が現在使っている読み込み処理です。

//====================================================

//リソースオブジェクト取得
Resource res = (Viewインスタンス).getContext().getResources();

//リソースIDを使ってイメージからビットマップ作成
Bitmap bitmap = BitmapFactory.decodeResource(res, R.drawable.(リソース管理
ID) );

//ビットマップのピクセルデータ取得
int[] bitmapData = new int[ bitmap.getWidth() * bitmap.getHeight() ];
bitmap.getPixels( bitmapData, 0, bitmap.getWidth(), 0, 0,
bitmap.getWidth(), bitmap.getHeight() );

//ここでbitmapDataの中を見ると、アルファが0xFFでないピクセルのデータが正しく読み込めていない

//=====================================================

以上です。

adamrocker

unread,
Sep 27, 2008, 10:51:32 AM9/27/08
to Android-SDK-Japan
adamrockerです。

私も試してみましたがダメでした。
ピクセルに意図しない値が入っていますね。
Bitmap.extractAlpha()メソッドで取得したBitmapも値が入っていません。

ちょっと調べてみたら、それらしい解答をみつけました。
http://groups.google.com/group/android-developers/browse_thread/thread/ec19d66a05c9160f/094ab3adb245209e?lnk=gst&q=getPixels#094ab3adb245209e

>>
When you call getPixels(), the values are converted back
to unpremultiplied form automatically, but in this case there is no
change.
<<

これが我々が意図しない所ですね。
現状ではどうにもならないようです。
残念です…

kambayashi

unread,
Sep 27, 2008, 11:31:39 PM9/27/08
to Android-SDK-Japan
adamrockerさん

神林です。ご解答いただきありがとうございます。
やはりバグなんですね。
とりあえず次期バージョンでは直ることを期待して使っておきます。
m5のバージョンの時からなっているので、今後ずっとこのまま放置されそうな気もしますが・・・

以上です

On 9月27日, 午後11:51, adamrocker <adamroc...@gmail.com> wrote:
> adamrockerです。
>
> 私も試してみましたがダメでした。
> ピクセルに意図しない値が入っていますね。
> Bitmap.extractAlpha()メソッドで取得したBitmapも値が入っていません。
>
> ちょっと調べてみたら、それらしい解答をみつけました。http://groups.google.com/group/android-developers/browse_thread/threa...
>
>
>
> When you call getPixels(), the values are converted back
> to unpremultiplied form automatically, but in this case there is no
> change.
> <<
>
> これが我々が意図しない所ですね。
> 現状ではどうにもならないようです。
> 残念です…
>
> On 9月26日, 午後11:11, kambayashi <kambayas...@gmail.com> wrote:
>
>
>
> > android sdk 1.0 Release1でリソースから画像を読み込もうとしているのですが、
> > アルファが0xFFではないピクセルのデータが正しく読み込めません。
> > アルファが0xFFの部分は問題なく読めるので、バグなのかなという気もするのですが、
> > 問題なく読めている方いましたら、読み込み方を教えてください。
> > 以下が現在使っている読み込み処理です。
>
> > //====================================================
>
> > //リソースオブジェクト取得
> > Resource res = (Viewインスタンス).getContext().getResources();
>
> > //リソースIDを使ってイメージからビットマップ作成
> > Bitmap bitmap = BitmapFactory.decodeResource(res, R.drawable.(リソース管理
> > ID) );
>
> > //ビットマップのピクセルデータ取得
> > int[] bitmapData = new int[ bitmap.getWidth() * bitmap.getHeight() ];
> > bitmap.getPixels( bitmapData, 0, bitmap.getWidth(), 0, 0,
> > bitmap.getWidth(), bitmap.getHeight() );
>
> > //ここでbitmapDataの中を見ると、アルファが0xFFでないピクセルのデータが正しく読み込めていない
>
> > //=====================================================
>
> > 以上です。- 引用テキストを表示しない -
>
> - 引用テキストを表示 -
Reply all
Reply to author
Forward
0 new messages