使用PHP将元数据添加到PNG图像

时间:2016-03-10 10:01:12

标签: php database image png metadata

有没有办法使用php将元数据(如关键字)添加到几个png图像?我已将图像存储在我的数据库中,我想对相应的关键字进行相同的操作,但我还没有找到任何有用的建议。谢谢

image.php



<!DOCTYPE html>
<html lang="en">
<head>
	<title>Upload Images</title>
</head>
 <body>
	<form action="tags.php" method="POST" enctype="multipart/form-data" >
		<p>Select Image (one or multiple):</p>
		<input type="hidden" name="MAX_FILE_SIZE" value="536870912"/>
		<input type="file" name="image[]" accept="image/png" accept="image/jpg" accept="image/jpeg" accept="image/gif" multiple="multiple" />
		<input type="submit" value="Upload file" name="submit" />

	</form>
 </body>
</html>
&#13;
&#13;
&#13;

tags.php(Raptor的回答)

&#13;
&#13;
<?php
include('../config.php');

$image = new Imagick();
$image->readImage("C:/xampp/htdocs/cmanager/uploads");
$image->setImageProperty('keywords', 'Imagick');

print($image->getImageProperty('keywords'));
&#13;
&#13;
&#13;

2 个答案:

答案 0 :(得分:1)

您需要ImageMagick的setImageProperty()帮助才能实现目标。

<?php
$image = new Imagick();
$image->newImage(300, 200, "black"); // or load your PNG into Imagick

$image->setImageProperty('keywords', 'Imagick');
echo $image->getImageProperty('keywords');
?>

要求PHP针对ImageMagick 6.3.2 +进行编译。

或者,您可以使用显示here的代码解析PNG的元数据。尝试一下。

最后,如果您打算改为编辑EXIF数据,可以使用EXIF functions

答案 1 :(得分:1)

此外,你可以set PNG metadata in pure PHP(例如关于如何设置 pHYs 块)。