タグ付けされた質問 「bitmap」

画像をビットのセットとしてエンコードするためのデータ構造。各画像ピクセルは、ビットまたはビットのグループにマップされます。同様に、各基本情報がビットにマッピングされている他の複雑なデータのエンコードにも使用されます。プラットフォーム固有のビットマップAPIの場合、より具体的なタグ(例:android-bitmapまたはnsbitmapimagerep)を優先します。

30
画像をビットマップオブジェクトにロードする際の奇妙なメモリ不足の問題
各行にいくつかの画像ボタンがあるリストビューがあります。リストの行をクリックすると、新しいアクティビティが起動します。カメラのレイアウトに問題があるため、独自のタブを作成する必要がありました。結果に対して起動されるアクティビティはマップです。ボタンをクリックして画像プレビューを起動する(SDカードから画像を読み込む)と、アプリケーションはアクティビティからアクティビティに戻りlistview、結果ハンドラーに戻り、画像ウィジェットにすぎない新しいアクティビティを再起動します。 リストビューの画像プレビューは、カーソルとで行われていますListAdapter。これでかなり簡単になりますが、サイズ変更した画像を配置する方法がわかりません(srcつまり、オンザフライで画像ボタンのようにピクセルではなくビットサイズを小さくします。したがって、電話のカメラから出た画像のサイズを変更しました。 問題は、戻って2番目のアクティビティを再起動しようとすると、メモリ不足エラーが発生することです。 行ごとにリストアダプターを簡単に構築できる方法はありますか? フォーカスの問題のためにタッチスクリーンで行を選択できないため、各行のウィジェット/要素のプロパティにもいくつか変更を加える必要があるため、これは望ましい方法です。(ローラーボールが使用できます。) 帯域外のサイズ変更と画像の保存を実行できることはわかっていますが、それは実際に実行したいことではありませんが、そのためのサンプルコードを使用すると便利です。 リストビューで画像を無効にするとすぐに、再び正常に機能しました。 参考までに:これは私がやっていたことです: String[] from = new String[] { DBHelper.KEY_BUSINESSNAME,DBHelper.KEY_ADDRESS,DBHelper.KEY_CITY,DBHelper.KEY_GPSLONG,DBHelper.KEY_GPSLAT,DBHelper.KEY_IMAGEFILENAME + ""}; int[] to = new int[] {R.id.businessname,R.id.address,R.id.city,R.id.gpslong,R.id.gpslat,R.id.imagefilename }; notes = new SimpleCursorAdapter(this, R.layout.notes_row, c, from, to); setListAdapter(notes); どこにR.id.imagefilenameありますButtonImage。 ここに私のLogCatがあります: 01-25 05:05:49.877: ERROR/dalvikvm-heap(3896): 6291456-byte external allocation too large for this process. 01-25 05:05:49.877: ERROR/(3896): VM …



18
ビットマップを場所に保存
Webサーバーから画像をダウンロードして画面に表示し、ユーザーが画像を保持したい場合は、SDカードの特定のフォルダーに保存する機能に取り組んでいます。ビットマップを取り、それをSDカードの任意のフォルダに保存する簡単な方法はありますか? 私の問題は、画像をダウンロードして、ビットマップとして画面に表示できることです。画像を特定のフォルダーに保存するために見つけた唯一の方法は、FileOutputStreamを使用することですが、これにはバイト配列が必要です。ビットマップからバイト配列に変換する方法(これが正しい場合でも)がわからないので、FileOutputStreamを使用してデータを書き込むことができます。 私が持っている他のオプションはMediaStoreを使用することです: MediaStore.Images.Media.insertImage(getContentResolver(), bm, barcodeNumber + ".jpg Card Image", barcodeNumber + ".jpg Card Image"); これはSDカードに保存するには問題なく動作しますが、フォルダーをカスタマイズすることはできません。
469 android  bitmap  save 


16
Androidでビットマップのサイズを変更する方法は?
リモートデータベースからBase64文字列を取得したビットマップencodedImageがあります(Base64で画像を表す文字列です): profileImage = (ImageView)findViewById(R.id.profileImage); byte[] imageAsBytes=null; try { imageAsBytes = Base64.decode(encodedImage.getBytes()); } catch (IOException e) {e.printStackTrace();} profileImage.setImageBitmap( BitmapFactory.decodeByteArray(imageAsBytes, 0, imageAsBytes.length) ); profileImageは私のImageViewです わかりましたImageViewが、私のレイアウトに表示する前に、この画像のサイズを変更する必要があります。120x120にサイズ変更する必要があります。 誰かにコードのサイズを変更するように教えてもらえますか? 私が見つけた例は、base64文字列取得ビットマップには適用できませんでした。
336 android  bitmap  base64 

9
Javaビットマップをバイト配列に変換する
Bitmap bmp = intent.getExtras().get("data"); int size = bmp.getRowBytes() * bmp.getHeight(); ByteBuffer b = ByteBuffer.allocate(size); bmp.copyPixelsToBuffer(b); byte[] bytes = new byte[size]; try { b.get(bytes, 0, bytes.length); } catch (BufferUnderflowException e) { // always happens } // do something with byte[] copyPixelsToBufferバイトへの呼び出しがすべて0 になった後にバッファを見ると...カメラから返されるビットマップは不変です...しかし、コピーを実行しているので、それは問題ではありません。 このコードの何が問題になっているのでしょうか?

6
リソースからビットマップを設定する方法
これは簡単に思えます、私はビットマップ画像を設定しようとしていますが、リソースから、アプリケーション内の描画可能なフォルダーにいます。 bm = BitmapFactory.decodeResource(null, R.id.image); これは正しいです?
278 android  bitmap 


10
System.Drawing.BitmapからWPF BitmapImageを読み込む
のインスタンスがあり、System.Drawing.BitmapそれをWPFアプリでの形式で利用できるようにしたいと考えていますSystem.Windows.Media.Imaging.BitmapImage。 これのための最良のアプローチは何でしょうか?
223 c#  wpf  bitmap 

21
Androidで大きなビットマップファイルのサイズを変更して出力ファイルをスケーリングする
ファイルに大きなビットマップ(3888x2592など)があります。次に、そのビットマップのサイズを800x533に変更して、別のファイルに保存します。通常、Bitmap.createBitmapメソッドを呼び出してビットマップをスケーリングしますが、最初の引数としてソースビットマップが必要です。元の画像をBitmapオブジェクトに読み込むとメモリが不足するため、これを指定することはできません(たとえば、こちらを参照)。 また、ビットマップを正確な幅と高さにサイズ変更したいのでBitmapFactory.decodeFile(file, options)、たとえばを指定してビットマップを読み取ることもできませんBitmapFactory.Options.inSampleSize。を使用inSampleSizeすると、ビットマップのサイズが972x648(使用する場合inSampleSize=4)または778x518(使用する場合inSampleSize=5、2の累乗すらありません)にサイズ変更されます。 また、最初のステップで972x648などのinSampleSizeを使用して画像を読み取り、2番目のステップで正確に800x533にサイズ変更することも避けたいです。 私の質問を要約すると、10MP以上の大きな画像ファイルを読み取り、それを新しい画像ファイルに保存し、OutOfMemory例外を発生させずに特定の新しい幅と高さにサイズ変更する方法はありますか? またBitmapFactory.decodeFile(file, options)、Options.outHeightとOptions.outWidthの値を手動で800と533に設定してみましたが、そのようには動作しません。
218 android  image  resize  bitmap 


13
java.lang.OutOfMemoryError:ビットマップのサイズがVMの予算を超える-Android
Androidで画像をたくさん使うアプリを開発しました。 一度アプリを実行すると、画面上の情報(充填Layouts、Listviews、Textviews、ImageViews、など)を、ユーザが情報を読み取ります。 アニメーションや特殊効果など、記憶をいっぱいにするものはありません。ドローアブルは変更される場合があります。一部はAndroidリソースであり、一部はSDCARDのフォルダーに保存されたファイルです。 次に、ユーザーが終了し(onDestroyメソッドが実行され、アプリがVMによってメモリにとどまります)、その後、ある時点でユーザーが再び入力します。 ユーザーがアプリにアクセスするたびに、ユーザーがを取得するまで、メモリがどんどん増えているのがわかりますjava.lang.OutOfMemoryError。 それで、多くの画像を処理するための最良の/正しい方法は何ですか? 常にロードされないように、静的メソッドに配置する必要がありますか?レイアウトまたはレイアウトで使用されている画像を特別な方法でクリーニングする必要がありますか?

25
Android:imageviewで画像を角度回転
次のコードを使用して、ImageViewで画像を角度回転させています。より簡単で複雑でない方法はありますか? ImageView iv = (ImageView)findViewById(imageviewid); TextView tv = (TextView)findViewById(txtViewsid); Matrix mat = new Matrix(); Bitmap bMap = BitmapFactory.decodeResource(getResources(),imageid); mat.postRotate(Integer.parseInt(degree));===>angle to be rotated Bitmap bMapRotate = Bitmap.createBitmap(bMap, 0, 0,bMap.getWidth(),bMap.getHeight(), mat, true); iv.setImageBitmap(bMapRotate);

9
ビットマップのAndroidクロップセンター
正方形または長方形のビットマップがあります。私は最短の側面を取り、次のようなことをします: int value = 0; if (bitmap.getHeight() <= bitmap.getWidth()) { value = bitmap.getHeight(); } else { value = bitmap.getWidth(); } Bitmap finalBitmap = null; finalBitmap = Bitmap.createBitmap(bitmap, 0, 0, value, value); 次に、これを使用して144 x 144ビットマップにスケーリングします。 Bitmap lastBitmap = null; lastBitmap = Bitmap.createScaledBitmap(finalBitmap, 144, 144, true); 問題は、元のビットマップの左上隅をトリミングすることです。ビットマップの中央をトリミングするコードを誰かが持っていますか?
150 android  bitmap  crop 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.