0
我的任務是處理一個問題,我需要從1000個圖像集合中提取一個圖像,並根據get查詢中傳遞的參數將其提供給用戶。 這很簡單。偶爾,我被要求以這樣一種方式提供圖像,即使每次同一個文件都是服務器,圖像文件的sha1散列應該會有所不同。使用GD庫的圖像隨機化
爲了達到這個目的,我們可以在隨機的地方在圖像背景中添加隨機像素。
誰能告訴我怎樣可以使用的GD庫
我的任務是處理一個問題,我需要從1000個圖像集合中提取一個圖像,並根據get查詢中傳遞的參數將其提供給用戶。 這很簡單。偶爾,我被要求以這樣一種方式提供圖像,即使每次同一個文件都是服務器,圖像文件的sha1散列應該會有所不同。使用GD庫的圖像隨機化
爲了達到這個目的,我們可以在隨機的地方在圖像背景中添加隨機像素。
誰能告訴我怎樣可以使用的GD庫
使用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');
謝謝!我需要添加一個透明像素而不是紅色的點!我會怎麼做?我的老闆向我提出了這個要求,所以我不知道他爲什麼需要這個功能 –
我編輯了我的答案 – mpratt
嗨,我嘗試使用您提供的代碼。非常幸運,透明像素在圖像上顯示爲黑點。任何想法,爲什麼會發生這種情況? –