当我使用GD图像库时缺少方向EXIF数据,在使用imagecreatefromstring()制作jpg文件之前,是否可以直接从原始数据字符串中获取数据?方向数据就在那里,因为当我在Chrome中查看gmail中的电子邮件时,它会显示正确的方向,但是一下载图像就会丢失数据。我也尝试使用exif_thumbnail来查看我是否可以从中找出方向,但缩略图也不见了。
如果我通过chrome下载附件,Windows图像查看器会将其显示为横向,但如果我将其上传到flickr,则会显示纵向,flickr用于确定方向的是什么?
编辑:解决了 createimagefromstring从图像文件中删除了大量元数据,但是使用fwrite从数据字符串逐字创建文件,所以我这样做了
$filename = 'pic.jpg';
$r = fopen($filename,'x');
fwrite($r,$raw_data); //$raw_data is the data string of the image
fclose($r);
并且所有exif数据都在那里!愚蠢的GD库! >:(
答案 0 :(得分:0)
如果你真的像你说的那样使用GD库,你可以利用getimagesize()
来检查图像的尺寸。如果宽度大于图像的高度,则可以安全地假设它是以横向模式拍摄的。
$params = getimagesize($image);
$width = $params[0];
$height = $params[1];
if ($width > $height) {
$mode = "landscape";
} else if ($width < $height) {
$mode = "portrait";
}