Articles of Растровое

Как решить OutOfMemoryError с помощью LayerDrawable

Ошибка: java.lang.OutOfMemoryError at android.graphics.Bitmap.nativeCreate(Native Method) at android.graphics.Bitmap.createBitmap(Bitmap.java:605) at android.graphics.Bitmap.createBitmap(Bitmap.java:551) at android.graphics.Bitmap.createScaledBitmap(Bitmap.java:437) at android.graphics.BitmapFactory.finishDecode(BitmapFactory.java:618) at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:593) at android.graphics.BitmapFactory.decodeResourceStream(BitmapFactory.java:445) at android.graphics.drawable.Drawable.createFromResourceStream(Drawable.java:775) at android.content.res.Resources.loadDrawable(Resources.java:1968) at android.content.res.Resources.getDrawable(Resources.java:677) at android.widget.ImageView.resolveUri(ImageView.java:542) at android.widget.ImageView.setImageResource(ImageView.java:315) at app.Main.GridActivity.initaliseLevel(GridActivity.java:245) at app.Main.GridActivity.load_player_settings(GridActivity.java:180) at app.Main.GridActivity.onResume(GridActivity.java:79) at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1158) at android.app.Activity.performResume(Activity.java:4607) at android.app.ActivityThread.performResumeActivity(ActivityThread.java:2448) at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:2486) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2000) at android.app.ActivityThread.access$600(ActivityThread.java:128) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1161) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:137) at android.app.ActivityThread.main(ActivityThread.java:4517) at java.lang.reflect.Method.invokeNative(Native […]

Масштаб изображения без потери качества изображения не работал

Кто-нибудь знает, как масштабировать растровое изображение без потери качества изображения? В настоящее время я столкнулся с этой проблемой , когда размер выбранного изображения может быть слишком большим, что привело к возврату приложения в другое действие. Поэтому теперь я попытался использовать этот метод для масштабирования выбранного изображения без потери его качества. Я получаю код отсюда . […]

Android – Bitmap.CreateBitmap – исключение нулевого указателя

Иногда, когда я пытаюсь создать размытое растровое изображение, я получаю «Null Pointer Exception». Случается в этом блоке кода (я недавно начал ловить исключение, так что, по крайней мере, это не сбой приложения): try { using (Bitmap.Config config = Bitmap.Config.Rgb565) { return Bitmap.CreateBitmap (blurredBitmap, width, height, config); } } catch (Java.Lang.Exception exception) { Util.Log(exception.ToString()); } Пожалуйста, […]

Правильно загружать 24-битные растровые данные в 32-битный объект Bitmap

Я пытаюсь загрузить массив байтов, содержащий данные 24-битного файла растрового изображения в объект Bitmap на Android, но у меня возникают проблемы, так как Bitmap поддерживает только 32-битные и 16-битные форматы. Вот что я придумал, чтобы преобразовать 24-битные данные в 32-разрядные: byte[] file = new byte[is.available()]; is.read(file); is.close(); byte[] paddedFile = new byte[file.length + file.length / […]

Самый быстрый способ поворота растрового изображения большого размера

Я работаю с изображениями большого размера, и когда я пытаюсь повернуть их (applying matrix on the bitmap) происходит много секунд. Я видел, что галерея систем Android может выполнить эту задачу очень быстро. Как это возможно? Я думал, что вы выполняете поворот на asyncTask, применяя только поворот ImageView (который не занимает много времени) в основном потоке, […]

Почему иногда битмапы – это одни и те же объекты?

В моем коде я делаю что-то вроде этого: public void doStuff() { Bitmap scaledBitmap = decodeFileAndResize(captureFile); saveResizedAndCompressedBitmap(scaledBitmap); Bitmap rotatedBitmap = convertToRotatedBitmap(scaledBitmap); driverPhoto.setImageBitmap(rotatedBitmap); if (rotatedBitmap != scaledBitmap) { scaledBitmap.recycle(); scaledBitmap = null; System.gc(); } } private Bitmap convertToRotatedBitmap(Bitmap scaledBitmap) throws IOException { ExifInterface exifInterface = new ExifInterface(getCaptureFilePath()); int exifOrientation = exifInterface.getAttributeInt(ExifInterface.TAG_ORIENTATION, 0); float orientationDegree = getRotationDegree(exifOrientation); […]

Почему образец документации делится на 2 для вычисления inSampleSize для загрузки Bitmap?

В документации для обучения Android есть статья о том, как эффективно загружать большие растровые изображения, в которых обсуждается вычисление параметра inSampleSize для inSampleSize изображения при его загрузке. Это общий пример кода. public static int calculateInSampleSize(BitmapFactory.Options options, int reqWidth, int reqHeight) { // Raw height and width of image final int height = options.outHeight; final int […]

Как сохранить данные Exif после битмап-коппрессии в Android

Мне нужно получить изображение с SD-карты, создать, повернуть и сохранить измененное изображение. Я пытаюсь использовать этот код Bitmap original = BitmapFactory.decodeFile(file.getAbsolutePath()); ExifInterface originalExif = new ExifInterface(file.getAbsolutePath()); int orientation = originalExif.getAttributeInt(ExifInterface.TAG_ORIENTATION, ExifInterface.ORIENTATION_UNDEFINED); Matrix matrix = new Matrix(); int rotate = 90; if(orientation == ExifInterface.ORIENTATION_ROTATE_90){ rotate = 180; }else if(orientation == ExifInterface.ORIENTATION_ROTATE_180){ rotate = 270; }else if(orientation […]

Эффективное создание растрового изображения для маркеров карты

Я использую android google maps v2, и я создаю маркеры карт и назначая растровое изображение. Я получаю растровое изображение из каталога моих ресурсов. Причина, по которой я получаю их от активов, заключается в том, что путь, который я использую, чтобы найти значок «справа», является динамическим. Мой вопрос в том, должен ли я сохранять базовое растровое […]

Как стереть изображение с помощью пальца в Android

Я разрабатываю приложение, которое нуждается в функции в объекте. У меня есть изображение A, которое покрывает изображение B. С пальцем мне нужно стереть изображение A, чтобы показать изображение B. Стереть следует за вашим текущим изображением пальца A Я пытаюсь создать код, но все же я не смог стереть изображение A. это код, который я использую […]

Intereting Posts
Перед добавлением содержимого необходимо указать функцию окна, а при создании диалога в фрагменте Использование TabLayout внутри фрагмента; Текст вкладки невидимый Как указать минимальную и / или максимальную длину в RemoteInput Одновременно применять одну анимацию к нескольким представлениям Как шумоподавление работает в Android? Каким будет URL-адрес моих приложений в Google Play, когда я его опубликую? Повторное использование файлов расширения в консоли разработчика Android Почему `ACTION_GATT_DISCONNECTED` занимает столько времени, чтобы обновить статус? Вкладки отображаются по-разному в зависимости от того, установлен ли Theme.NoTitleBar или нет в манифесте Ошибка приложения на экране блокировки / сна – NullPointerException Как изменить высоту списка просмотров прогмально ..? Android-эмулятор перевернут Загрузить файл на Android Получить программные шрифты шрифтов RelativeLayout с scrollview не прокруткой