Czy istnieje sposób na obrócenie tablicy bajtów bez jej dekodowania do bitmapy?Obróć tablicę bajtów JPEG po onPictureTaken
Obecnie w jpeg PictureCallback po prostu piszę tablicę bajtów bezpośrednio do pliku. Ale obrazy są obracane. Chciałbym je obrócić bez dekodowania do bitmapy z nadzieją, że to pozwoli mi zachować pamięć.
BitmapFactory.Options o = new BitmapFactory.Options();
o.inJustDecodeBounds = true;
BitmapFactory.decodeByteArray(data, 0, data.length, o);
int orientation;
if (o.outHeight < o.outWidth) {
orientation = 90;
} else {
orientation = 0;
}
File photo = new File(tmp, "demo.jpeg");
FileOutputStream fos;
BufferedOutputStream bos = null;
try {
fos = new FileOutputStream(photo);
bos = new BufferedOutputStream(fos);
bos.write(data);
bos.flush();
} catch (IOException e) {
Log.e(TAG, "Failed to save photo", e);
} finally {
IOUtils.closeQuietly(bos);
}
Cześć. Udało ci się to zrobić? Dzięki. – Paul
Niestety nie. –
@Paul: zobacz http://stackoverflow.com/a/16655188/192373 –