0

我的任务是我需要从一组 1000 张图像中提取一张图像,并根据 get 查询中传递的参数将其提供给用户。这很简单。另外,我被要求以这样的方式提供图像,即使每次都是同一个文件,图像文件的 sha1 哈希值也应该不同。

为此,我们可以在图像背景的随机位置添加随机像素。

有人可以告诉我如何使用 GD 库来实现这一点

4

1 回答 1

0

使用Imagesetpixel

$img = imagecreatefrompng('your_image.png');
$red = imagecolorallocate($img, 255, 0, 0); 
imagesetpixel($img, $x, $y, $red);
........
........

另一方面,为什么要在每个请求上更改图像的 sha1 哈希?

编辑:由于您想要一个透明像素,因此您将需要imagealphablending和类似的东西:

$img = imagecreatefrompng('your_image.png');
imagealphablending($img, false);
$transparent = imagecolorallocatealpha($img, 255, 255, 255, 127);
imagesetpixel($img, $x, $y, $transparent);
imagesavealpha($img, true);         
imagepng($img, 'my_saved_file.png');
于 2012-05-29T14:06:24.043 回答