php如何给jpg图片写入exif信息?
程序员文章站
2022-03-31 08:16:47
...
在写一个php把图片方向根据exif旋转过来的功能,功能是做好了,但是旋转之后的图片文件exif信息都没了,因为我用
imagejpeg
重写了图片,请问怎么把exif写回去?
贴一下我旋转图片的代码:
function rotateImg($img,$degrees,$bgd_color=0,$ignore_transparent=null){
$resource = imagecreatefromjpeg($img);
//$resource = imagecreatefromstring(file_get_contents($img));
if(!$resource)
return false;
$resource = imagerotate($resource, $degrees, $bgd_color,$ignore_transparent);
print_r($img);
if($resource&&imagejpeg($resource,$img)){
imagedestroy($resource);//释放内存
return true;
}
return false;
}
回复内容:
在写一个php把图片方向根据exif旋转过来的功能,功能是做好了,但是旋转之后的图片文件exif信息都没了,因为我用imagejpeg
重写了图片,请问怎么把exif写回去?
贴一下我旋转图片的代码:
function rotateImg($img,$degrees,$bgd_color=0,$ignore_transparent=null){
$resource = imagecreatefromjpeg($img);
//$resource = imagecreatefromstring(file_get_contents($img));
if(!$resource)
return false;
$resource = imagerotate($resource, $degrees, $bgd_color,$ignore_transparent);
print_r($img);
if($resource&&imagejpeg($resource,$img)){
imagedestroy($resource);//释放内存
return true;
}
return false;
}
用Imagick可以很方便的读取/写入EXIF信息。
http://php.net/manual/en/imagick.setimageproperty.php
Gd是不支持exif写入的,只能读取。
相比Gd,Imagick实在是太先进了。换吧。