88. Восстанавливаем ориентацию фотографий, сделанных с iOS устройств в Adobe AIR приложении.

Использование Adobe AIR для написания мобильных приложений и не только.
http://flashpress.ru/blog/category/mobile/
iOS – Серия статей посвященных разработке iOS-приложений с помощью Adobe Flash используя язык ActionScript 3.0.
Посмотреть все статьи: http://flashpress.ru/blog/category/mobile/ios/

Если вы разрабатываете приложение на Adobe AIR для iOS устройств (iPhone, iPad, iPod…) с использованием камеры, то вы, скорее всего, сталкнетесь с непонятной неожиданностью. Фотографии полученные через CameraUI или CameraRoll классы загружаются в приложение повёрнутыми то на 90 градусов, то на -90 и т.д. КАК?? что? почему так происходит?

exif_data_j1

Суть этой проблеммы заключается в том, что когда AIR приложение получает изображение из CameraUI или CameraRoll класса, IOS устройство возвращает файл, который сжат стандартом JPEG JFIF, а не JPEG Exif. В то время как эти стандарты очень похожи, каждый из них содержит одно несовместимое требование – чтобы тег маркера их формата шел первым! На практике, по крайней мере для изображений iOS от медиа библиотеки, это означает то, что вы получите маркер JFIF там, где вы ждёте Exif.

Для того, чтобы устранить это недоразумение мы используем слегка модифицированную библиотеку jp.shichiseki.exif для считывания ExifInfo, и ещё пару AS3 классов для облегчения жизни. [Всё необходимое качаем тут] и говорим спасибо Японцам!

Подключаем к нашему пректу всё что есть в папке jp (кидаем папку jp в папку со всеми библиотеками, по умолчанию это папка src), там где хотим получить BitmapData с фотографией пишем:

 
Класс jp.digifie.media.CameraManeger выполняет загрузку фотографии, считывает ExifInfo и поворачивает фотографию так, как она должна быть (всё это есть в архиве).

 
Пример использования класса CameraManeger:

Вот в принципе и всё. После этих “нехитрых” манипуляций фотография, полученная с iOS устройства, будет повёрнута в нужное нам положение. Ещё раз говорим аригато японским товарищам и идём пить чай с печеньками.

Все необходимые библиотеки и пример качаем по этой ссылке

Статья написана на основе этой:
http://www.digifie.jp/blog/archives/1092
и этой
http://recycledinformation.blogspot.jp/2011/08/reading-exif-data-on-ios.html

iOS – Серия статей посвященных разработке iOS-приложений с помощью Adobe Flash используя язык ActionScript 3.0.
Посмотреть все статьи: http://flashpress.ru/blog/category/mobile/ios/
Использование Adobe AIR для написания мобильных приложений и не только.
http://flashpress.ru/blog/category/mobile/

Автор: Arman11
Эту статью прочитали 1170 раз

Возникли вопросы по статье? Не стесняйтесь спрашивать в комментариях или любым другим способом на странице Контакты .

Присоединяйтесь к нам в социальных сетях: ВКонтакте , Twitter и Facebook
Понравилась статья? Буду благодарен если вы поделитесь ссылкой с друзьями:


Комментарии ВКонтакте:




Комментарии Facebook:




Комментарии WordPress: