我正在尝试创建一个网站,我可以在其中添加和修改JPEG文件中的元数据。有没有一种方法可以让我以相当简单的方式写入exif数据。我见过一两个例子,但它们太复杂了,无法在我给出的时间范围内掌握。我知道IPTC,我知道可以将元数据添加到JPEG文件中。但这样做的正确方法是什么?如果有人可以提供一些关于如何使用EXIF或IPTC或任何其他库或PHP功能将元数据添加到JPEG的帮助,那么我将不胜感激。更新:首先感谢dbers的回复.我已经查看了代码。我已经设法将默认标签添加到JPG中。我仍然对一小部分代码的含义感到困惑。例如在php函数中写入exif数据:functioniptc_make_ta
我正在尝试获取image-types的Mime-Type,如下所示:if(!empty($_FILES['uploadfile']['name'])&&$_FILES['uploadfile']['error']==0){$file=$_FILES['uploadfile']['tmp_name'];$file_type=image_type_to_mime_type(exif_imagetype($file));switch($file_type){//CodesHere}}但它总是报错Calltoundefinedfunctionexif_imagetype()。我在这里做错了什么
我正在开发一个应用程序,用于修复从AWS存储桶下载的jpeg文件的方向(如果存在)。Here您可以验证此图像是否具有exif旋转部分。我下载图片file_put_contents('/local/path/to/file',file_get_contents('/path/to/url/image'));在我尝试通过GregwarImagelibrary确定方向后.Image::open($path)->fixOrientation()->save($dest,$type,$quality);我试过几张图片,我总是收到消息Warning:exif_read_data('/local/p
有没有办法使用PHP从JPG中删除EXIF数据?我听说过PEL,但我希望有更简单的方法。我正在上传将在线显示的图片,并希望删除EXIF数据。谢谢!编辑:我不/不能安装ImageMagick。 最佳答案 使用gd在一个新的图像中重新创建图像的图形部分,您可以用另一个名称保存。见PHPgd编辑2017使用新的Imagick功能。打开图片:请务必在图片中保留任何ICC配置文件$profiles=$img->getImageProfiles("icc",true);然后剥离图像,如果有的话,将配置文件放回去$img->stripImage(
在我们的网站上,我们收到了大量从各种来源上传的照片。为了减小文件大小,我们删除了所有exifdata来自使用mogrify的来源:mogrify-stripimage.jpg我们想要做的是将一些基本的exif数据(版权Initrode等)插入到这个新的“干净”图像上,但我似乎无法在文档中找到任何可以实现的东西这个。有人有这方面的经验吗?如果无法通过imagemagick完成,那么基于PHP的解决方案将是下一个最佳选择!谢谢。 最佳答案 您可以节省大量空间,尤其是在您有大量图像的情况下..将以下内容添加到text.txt(IPTC标签
我想从相机输出的字节数组数据中读取EXIF数据。我知道我可以使用exifInterface从文件中读取EXIF数据。但这需要我将字节数组数据写入文件,读取EXIF数据,然后删除文件。我想读取EXIF数据而无需先写入文件。有人有什么想法吗? 最佳答案 相机应用程序包含一个EXIF类,它可以做到这一点:http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android-apps/4.1.1_r1/com/android/camera/E
我试图通过android将“GPSTimeStamp”设置为jpg的exif标签。这个文档非常稀缺:http://developer.android.com/reference/android/media/ExifInterface.html#TAG_GPS_TIMESTAMP类型是字符串。常数值:“GPSTimeStamp”。但具体的格式是什么?看这里:https://ExifTool.org/TagNames/GPS.htmlGPSTimeStamp:rational64u[3](写入时,如果存在日期,则去掉日期,如果包含时区,则将时间调整为UTC)所以我需要一个3单元格数组的长值
在我的自定义相机中,我需要保存拍摄图像的方向。此代码适用于其他android版本。但它在6.0.1中不起作用。将属性保存到图像文件后得到的结果是错误的。try{exif=newExifInterface(pictureFile.getAbsolutePath());exif.setAttribute(ExifInterface.TAG_ORIENTATION,""+orientation);exif.saveAttributes();}catch(IOExceptione){e.printStackTrace();} 最佳答案 试试
我正在将GPS坐标写入我的JPEG图像,并且坐标是正确的(如我的logcat输出所示),但它似乎以某种方式被损坏了。读取exif数据会产生空值,或者在我的GPS的情况下:512.976698度,512.976698度。谁能解释一下这个问题?写下来:try{ExifInterfaceexif=newExifInterface(filename);exif.setAttribute(ExifInterface.TAG_GPS_LATITUDE,latitude);exif.setAttribute(ExifInterface.TAG_GPS_LONGITUDE,longitude);exi
我需要知道图库中的图像(由相机拍摄)的方向。我最初的方法是使用适用于我的Droid1的MediaStore.Images.Media.ORIENTATION。在HTCThunderbolt上进行测试时,该手机仅将0保存到该字段。然后我开始阅读exif数据:ExifInterfaceexifReader=newExifInterface(mFilePath);exifReader.getAttributeInt(ExifInterface.TAG_ORIENTATION,-1);这也为每个图像返回0。任何人都知道如何在android上正确获取照片的方向? 最佳