Разрешение файла jpg
У меня есть класс, где в конструкторе я получаю файл. Этот файл в формате JPEG. Как я могу получить разрешение этого файла JPEG в этом классе? Это код из конструктора:
public static Bitmap bitmapSizer(File file) {
BitmapFactory.Options options = new BitmapFactory.Options();
Bitmap bitmap = null;
options.inJustDecodeBounds = true;
BitmapFactory.decodeFile(file.getAbsolutePath(), options);
int imageHeight = options.outHeight;
int imageWidth = options.outWidth;
options.inDither = true;
options.inPreferredConfig = Bitmap.Config.ARGB_4444;
options.inPurgeable = true;
options.inSampleSize=8;
options.inJustDecodeBounds = false;
1 ответ
Решение
Вам нужно переместить несколько строк кода.
Во-первых, получить Options
возразить:
BitmapFactory.Options options = new BitmapFactory.Options();
options.inDither = true;
options.inPreferredConfig = Bitmap.Config.ARGB_4444;
options.inPurgeable = true;
options.inSampleSize=8;
options.inJustDecodeBounds = true;
Обратите внимание options.inJustDecodeBounds =
true Это будет читать только заголовок jpg, а не все изображение.
Затем расшифруйте ваш файл:
Bitmap bitmap = null;
BitmapFactory.decodeFile(file.getAbsolutePath(), options);
После декодирования вы получите результаты в:
int imageHeight = options.outHeight;
int imageWidth = options.outWidth;