Я новичок здесь в Stackoverflow.
Я бы очень хотел выяснить, можно ли сделать определенный цвет изображения прозрачным с использованием PHP-скрипта. И если это так, как это сделать.
Скажем, это образ, цвет фона которого (зеленый) должен быть полностью прозрачным: французский Hotdog с зеленым фоном
Я совершенно не знаю, как выглядит такой сценарий или даже с чего начать. Я предполагаю, что вам было бы удобно установить нежелательный цвет RGB, а затем «сканировать» каждый пиксель в изображении, чтобы определить, какие пиксели должны быть прозрачными. Но кроме этого я не знаю.
Серьезно надеюсь, что кто-то здесь сможет помочь мне в этом.
в первую очередь изображение должно быть png, потому что jpeg не поддерживает прозрачность, тогда код выглядит так:
<?php $image = 'test.png'; $im = imagecreatefrompng($image); //if you exactly know the RGB color indexes //$rgb = imagecolorexact($im, 0, 0, 0); //or keep the rgb color by position so at top 0 left 0 $rgb = imagecolorat($im, 0, 0); imagecolortransparent($im, $rgb); header("Content-type: image/png"); //display the image directly imagepng($im); // or save it // imagepng($im, 'test-to-transparent.png'); imagedestroy($im); ?>
imagecolortransparent () поможет вам:
... $yourColor = imagecolorallocate($im, 0, 0, 0); imagecolortransparent($im, $yourColor); ...