問題タブ [bitmapfactory]
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.
android - BitmapFactory.decode *()を使用してビットマップ形式(RGBA_8888など)を指定するにはどうすればよいですか?
とを何度か呼び出していますが、RGB_565BitmapFactory.decodeFile()
やBitmapFactory.decodeResource()
RGBA_8888など、ビットマップがデコードされる形式を指定したいと思います。
現在、デコードされたビットマップ形式は、着信画像に依存しているようです。または、既存のビットマップを特定の形式に変換する方法はありますか?
これが重要な理由は、を使用して画像をデコードしようとすると、一部の画像がタイプjnigraphics
のを返すためです。これは役に立たないと思います。フォーマットが既知の値のいずれでもない理由について、誰かがより多くの洞察を持っていますか?この場合、内蔵の画像ピッカーはこのようにデコードされた画像を正しく表示するので、それらを処理する方法が必要だと思います。AndroidBitmapFormat
ANDROID_BITMAP_FORMAT_NONE
ご入力いただきありがとうございます。
java - SurfaceViewにjpegをロードして表示する最速の方法は?
これは私の最後の質問へのちょっとしたフォローアップです:Canvasの描画が遅すぎます
より速く画像を描くことができるようになったので、私が直面している問題は、画像の実際の読み込みに非常に時間がかかることです。
私が取り組んでいるアプリでは、ユーザーはビデオをリアルタイムで表示しているかのように、ビデオフレーム(jpeg)を連続して再生できます。私はBitmapFactory.decodeFile()
ビットマップに各jpegをロードするために使用しています。約240枚の画像があるため、一度にすべての画像を読み込むことができず、ヒープスペースをすべて使い果たしてしまいます。私が行っているのは、各画像の表示にかかる時間を短縮するために、個別のスレッドを介して一度に最大6つを配列にプリロードすることです。
残念ながら、画像の読み込みには50〜90ミリ秒かかり、42ミリ秒ごとに画像を表示する必要があります。おそらく画像をロードするより速い方法はありますか?
明確にするために、これらの画像はSDカード上のフォルダーにあり、すべて720x480jpegです。メモリ使用量を削減するために、その半分のサイズでサンプリングしています。
java - BitmapFactory.decodeFile が null を返す
Web 上の写真からビットマップを作成したいと考えています。最初に使用しようとしましBitmapFactory.decodeStream
たが、バグのために null が返されました (http://code.google.com/p/android/issues/detail?id=6066)。今、私は画像を保存してから使用しBitmapFactory.decodeFile
ていますが、それでもnullを返します。
何が間違っているか、または別の回避策のアイデアはありますか?
ありがとうございました!
android - インターネット権限があっても、接続から画像を取得できません
リモート URL からビットマップを作成しようとすると問題が発生します。スニペットは次のとおりです。
回線で例外が発生していconn.connect()
ます。それは言い
java.net.SocketException: Permission denied
ます。
私はすでにマニフェストに許可を追加しました:
コンピューターのブラウザーとエミュレーターのブラウザーの両方から画像を読み込むことができます。インターネット接続をブロックするファイアウォールはありません。いくつかの URL で試しましたが、何も機能しませんでした。
接続を正しく開いていますか? 代わりに HttpConnection を使用する必要がありますか?
android - 大きな画像の問題 ( java.lang.OutOfMemoryError: ビットマップ サイズが VM の予算を超えています )
多くの人として、私も大きな画像に問題があります。わかりました、ここに私のコードがあります。Stackoverflow で、BitmapFactory.Options を使用してこれを修正する方法を見つけました。しかし、私の状況では、ファイルからではなく画像を取得します。メモリに既に作成されているビットマップでこれを行う方法を誰か教えてもらえますか (電話のカメラからこの写真を取得します)
}
私の問題を解決する方法を教えてください。: (エミュレーターではこのエラーは発生しませんが、実際のデバイスではこのエラーが表示されます (ビットマップ サイズが VM の予算を超えています) よろしく、ピーター。
android - .NETで作成されたバイト配列を使用してAndroidのImageViewerウィジェットに画像を表示する
Androidアプリで使用したいバイト配列として、サーバーのデータベースに多数の画像が保存されています。
バイト配列はWindowsPhone7アプリの画像から作成されたため、.NETのWriteableBitmap(wbmp)を使用してIsolatedStorageFileStream(isfs)に保存します。
Androidアプリには、画像の1つを表示するために使用しようとしているImageViewウィジェットがあります。BitmapFactoryを使用してバイト配列(ペイロード)をデコードしようとしました:
しかし、それは機能しません-デバッガーをステップスルーすると、画像が表示されず、bmpがnullになります。これは、BitmapFactoryがバイト配列を正しくデコードできなかったことを示しているようです。
Windows Phone 7の場合、byte [](リアリティ)をMemoryStream(mstream)にロードし、そのMemoryStreamを使用してBitmap(bmp)のSetSourceメソッドを呼び出します。
そこで、Androidで、バイト配列をMemoryFileに読み込んでから、BitmapFactoryを使用してMemoryFileのInputStreamをロードしてみました。
しかし、これはまだ機能しません。
Androidでこの形式のバイト配列を正常にロードして画像を表示するにはどうすればよいですか?
android - BitmapAndroidのサイズを取得する
重複の可能性:
デコード後のビットマップのバイトサイズ?
このビットマップのサイズを取得できるようにする方法はありますか?getByteCount()を使用しようとしましたが、使用できませんか?
助言がありますか?
android - BitmapFactory.decodeFile() が null を返す原因は何ですか?
BitmapFactory.decodeFile(String, Options) を使用して、別のサービスでインターネットからダウンロードした画像をロードしていますが、null が返されることがあります。これは画像が破損しているか不完全であることが原因だと思っていましたが、デコーダーを見つけたところ、実際には完全に見えるファイルが表示されていました。グリッチまたは不完全な部分。
これにより、decodeFile(...) が null を返す原因となる状況は何ですか? 不完全、破損、または非画像ファイルは明らかにそれらの 1 つですが、他にはありますか? これは、システムがメモリ不足になった場合の文書化された動作であることを理解していますが、実際には、このために OutOfMemoryError スロー可能オブジェクトを取得 (および処理) しています。
私がテストしているタブレットは、最近 3.0 から 3.1 にアップグレードされました。このバージョンでメモリ不足の動作は変更されましたか?
アップデート
logcat で次の行に気付きました。
08-17 16:14:46.190: DEBUG/skia(3948): libjpeg エラー 105 < Ss=%d、Se=%d、Ah=%d、Al=%d> read_scanlines から [640 841]
java - Android BitmapFactory decodeFile が呼び出される前に呼び出されます
ListView に画像のサムネイルを表示しようとしています。画像は SD カードの Camera フォルダにあります。BitmapFactory.decodeFile を使用して画像を読み込んでいます。ファイルのデコード中に ProgressDialog を表示したいと思います。最初に ProgressDialog を表示してから、for ループで decodeFile を呼び出そうとしています。ProgressDialog は、for ループの後まで表示されません。ProgressDialog が表示される前に、decodeFile の呼び出しが実行されているように見えます。
for ループの前に ProgressDialog を表示するにはどうすればよいですか?
public class ActivityProgressBar extends ListActivity {
}
for ループの後に ProgressDialog が表示されていることを確認するために、progressDialog.dismiss() の呼び出しをコメントアウトしました。読みやすくするために、ListView に画像を表示するコード行を削除しました。ログを使用して、まだ for ループにいることを確認しました。
ありがとう
android - BitmapFactory causing app to crash on orientation change
I'm writing an app that stores a String in an SQLite database, which represents the filepath of an image on the /sdcard/. I have this code in the onCreate()
one of my activities:
The code works when I'm first loading the activity, but when I switch between screen orientations, it crashes my application. Any ideas on what I can do to fix this? I'd like to bee able to continue switching between orientations, but I don't need to refresh each time.
Also, I'm somewhat new, so please try to keep your answers not too complicated if possible.
Note that the file does exist in all cases.