图像旋转问题(水平图片作为垂直上传)-Exif问题?

时间:2015-10-18 作者:summersummer

我正在WordPress上建立一个分类广告网站,用户可以从前端上传他们的广告/图片。然而,当上传水平图片时,它们会作为垂直图片上传。

我研究了这个问题,并找到了以下建议的解决方案,用于使用Exif数据固定图像方向:

//read EXIF header from uploaded file
$exif = exif_read_data($_FILES[\'ImageFile\'][\'tmp_name\']);

//fix the Orientation if EXIF data exist
if(!empty($exif[\'Orientation\'])) {
    switch($exif[\'Orientation\']) {
    case 8:
        $createdImage = imagerotate($image,90,0);
        break;
    case 3:
        $createdImage = imagerotate($image,180,0);
        break;
    case 6:
        $createdImage = imagerotate($image,-90,0);
        break;
}
}
我把它放在我的WP主题中functions.php 但这并没有解决我的问题。不幸的是,我根本没有足够的代码知识来找出这个问题所在。如果有任何建议/意见,我将不胜感激。

1 个回复
SO网友:Dave Romsey

summersummer通过安装Image Rotation Repair, 其描述如下:

图像旋转修复插件只是基于EXIF数据修复图像方向。这主要是一个补丁,用于iPhone提供的面向错误的图像。从功能上来说,它会过滤所有上传的内容,如果EXIF->方向设置为大于1的数字,那么在WordPress处理图像之前,图像将以新的方向重新保存。

相关推荐

无法在模板函数.php中使用IS_HOME

我试图在标题中加载一个滑块,但只在主页上加载。如果有帮助的话,我正在使用Ultralight模板。我正在尝试(在template functions.php中)执行以下操作:<?php if ( is_page( \'home\' ) ) : ?> dynamic_sidebar( \'Homepage Widget\' ); <?php endif; ?> 但这行不通。现在,通过快速的google,我似乎需要将请