【问题标题】:PHP Keep exif data using imagecopyresampledPHP 使用 imagecopyresampled 保存 exif 数据
【发布时间】:2014-01-10 02:20:30
【问题描述】:

我想知道是否有一种方法可以将原始图像的 exif 数据保留在由 imagecopyresampled 函数创建的图像中。我的代码:

$randomName = Functions::generate_random_string(10);
$img = imagecreatefromjpeg($_FILES["file"]["tmp_name"]);
$imageSize = getimagesize($_FILES["file"]["tmp_name"]);
$ratio = 1 / ($imageSize[0] / $imageSize[1]);
$newWidth = 2560;
$newHeight = round($newWidth * $ratio);
$tmp_img = imagecreatetruecolor( $newWidth, $newHeight );
imagecopyresampled( $tmp_img, $img, 0, 0, 0, 0, $newWidth, $newHeight, $imageSize[0], $imageSize[1] );

工作正常,但在创建的图像中没有 exif 数据。

【问题讨论】:

  • 没有。 EXIF 数据是嵌入在 JPEG 的注释字段中的结构化数据。您的新图像是全新且独立的 GD 图像,不会与从原始照片创建的 GD 图像共享任何内容。您必须从原始文件中提取 JPG 注释字段并将其应用于新文件,但这超出了 GD 的权限

标签: php exif


【解决方案1】:

您可以捕获 exif 数据并将其作为文件的元数据保存到数据库中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-02
    相关资源
    最近更新 更多