Drupal 7, ориентация изображения iPhone перепуталась - нет информации exif

Итак, я схожу с ума от этого уже два дня. У меня есть сайт, построенный на Drupal 7.

Моя проблема заключается в том, что когда пользователи моего сайта загружают изображения с iPhone или iPad (как через ckeditor, так и изображения профиля учетной записи, загружаемые через формы), изображения переворачиваются вверх ногами.

Я зашел так далеко, что написал независимый php для чтения данных exif изображений и обнаружения проблемы, когда заметил странную проблему. изображения ДЕЙСТВИТЕЛЬНО имеют информацию exif, когда не в drupal, и кажется, что они теряют информацию exif после загрузки в drupal.

Я использую этот код для чтения информации exif

$full_filename ='image.jpg';
$exif = exif_read_data($full_filename);

print "<pre>";
    print_r($exif);
print "<pre>";

Это результат чтения изображения, которое не было загружено в друпал.

Array
(
    [FileName] => image4.jpg
    [FileDateTime] => 1372430458
    [FileSize] => 1568098
    [FileType] => 2
    [MimeType] => image/jpeg
    [SectionsFound] => ANY_TAG, IFD0, THUMBNAIL, EXIF
    [COMPUTED] => Array
        (
            [html] => width="2592" height="1936"
            [Height] => 1936
            [Width] => 2592
            [IsColor] => 1
            [ByteOrderMotorola] => 1
            [ApertureFNumber] => f/2.8
            [Thumbnail.FileType] => 2
            [Thumbnail.MimeType] => image/jpeg
        )

    [Make] => Apple
    [Model] => iPhone 4
    [Orientation] => 6
    [XResolution] => 72/1
    [YResolution] => 72/1
    [ResolutionUnit] => 2
    [Software] => 5.1.1
    [DateTime] => 2013:06:28 09:18:53
    [YCbCrPositioning] => 1
    [Exif_IFD_Pointer] => 192
    [THUMBNAIL] => Array
        (
            [Compression] => 6
            [XResolution] => 72/1
            [YResolution] => 72/1
            [ResolutionUnit] => 2
            [JPEGInterchangeFormat] => 676
            [JPEGInterchangeFormatLength] => 8886
        )

    [ExposureTime] => 1/24
    [FNumber] => 14/5
    [ExposureProgram] => 2
    [ISOSpeedRatings] => 80
    [ExifVersion] => 0221
    [DateTimeOriginal] => 2013:06:28 09:18:53
    [DateTimeDigitized] => 2013:06:28 09:18:53
    [ComponentsConfiguration] => 
    [ShutterSpeedValue] => 21632/4717
    [ApertureValue] => 4281/1441
    [BrightnessValue] => 94810/26881
    [MeteringMode] => 5
    [Flash] => 24
    [FocalLength] => 77/20
    [SubjectLocation] => Array
        (
            [0] => 1295
            [1] => 967
            [2] => 699
            [3] => 696
        )

    [FlashPixVersion] => 0100
    [ColorSpace] => 1
    [ExifImageWidth] => 2592
    [ExifImageLength] => 1936
    [SensingMethod] => 2
    [ExposureMode] => 0
    [WhiteBalance] => 0
    [SceneCaptureType] => 0
    [Sharpness] => 2
)

а это информация с изображения загруженного в друпал

Array
(
    [FileName] => image3.jpg
    [FileDateTime] => 1372355645
    [FileSize] => 75670
    [FileType] => 2
    [MimeType] => image/jpeg
    [SectionsFound] => COMMENT
    [COMPUTED] => Array
        (
            [html] => width="1024" height="765"
            [Height] => 765
            [Width] => 1024
            [IsColor] => 1
        )

    [COMMENT] => Array
        (
            [0] => CREATOR: gd-jpeg v1.0 (using IJG JPEG v62), quality = 75

        )

)

Возможно ли, что друпал как-то связан с этим. Инструментарий GD?

Я попытался использовать автоповорот imagecache, и он поворачивает изображения, не загруженные с iphone, но не повезло с ipad или iphone.

Я не уверен, как это сделать для начала. Любая помощь приветствуется.


person user2394359    schedule 28.06.2013    source источник


Ответы (1)


Вы не видите вещей.

iPhone/Pad удаляет информацию EXIF ​​при отправке изображения.

Загрузка изображения с iPhone удаляет exif-данные

Пользовательский модуль EXIF ​​может помочь.

https://drupal.org/project/exif_custom

То же можно сказать и о действиях ImageCache.

https://drupal.org/project/imagecache_actions

person Larry Lowe    schedule 20.07.2013