WordPress.org

Make WordPress Core


Ignore:
Timestamp:
02/27/2017 07:32:45 PM (3 years ago)
Author:
joemcgill
Message:

Media: Reset Exif orientation after rotate in WP_Image_Editor_Imagick.

Due to inconsistencies in the way browsers handle Exif orientation data,
if a user manually rotates an image within WordPress, set the Exif orientation to
the default (1) so that the image displays with the same rotation/flip in every browser.

Props sanchothefat, triplejumper12, joemcgill, azaozz, markoheijnen, mikeschroder.
Merges [40123] and [40129] to the 4.7 branch.
Fixes #37140. See #14459.

Location:
branches/4.7
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/4.7

  • branches/4.7/src/wp-includes/class-wp-image-editor-imagick.php

    r39607 r40135  
    550550            $this->image->rotateImage( new ImagickPixel('none'), 360-$angle );
    551551
     552            // Normalise Exif orientation data so that display is consistent across devices.
     553            if ( is_callable( array( $this->image, 'setImageOrientation' ) ) && defined( 'Imagick::ORIENTATION_TOPLEFT' ) ) {
     554                $this->image->setImageOrientation( Imagick::ORIENTATION_TOPLEFT );
     555            }
     556
    552557            // Since this changes the dimensions of the image, update the size.
    553558            $result = $this->update_size();
Note: See TracChangeset for help on using the changeset viewer.