Bu fotoğraf siyah görüntü şeklinde yani bir fotoğraf - başka bir görüntüyü kırpmak için kullanılan olurdu siyah şekil ve şeffaf arka plan ile bir görüntü - ne GD içinde başka bir görüntü maskeleme için temel kodu olacaktır.
Bunu yapmanın tek yolu phpThumb kullanıyor.
Temel referans burada: http://phpthumb.sourceforge.net/demo/demo/phpThumb.demo.demo.php#x31
Anında yeni görüntü oluştururken eğer gibi basit bir şey olurdu:
<img src="../phpThumb.php?src=path/to/image/image.jp&fltr[]=mask|path/to/mask/mask.png&f=png" alt="">
Png içine çıkışına.
Bir resim sonra bunu yaparken sunucuda saklanabilir için yeni bir imaj oluşturmak için, o ilk phpThumb temelleri dışarı figürü ve tüm geri kalanı ile maske parametreleri ayarlayın:
Örneğin:
...
require_once('phpThumb/phpthumb.class.php');
//Begin phpThumb work to resize image and create thumbnail
$uploaddir = $_SERVER['DOCUMENT_ROOT'] . $destination;
$uploadfile = $uploaddir . $file;
$phpThumb = new phpThumb();
// set data source -- do this first, any settings must be made AFTER this call
$phpThumb->setSourceFilename($uploadfile);
$phpThumb->setParameter('w', 360); //change to update the picture size
$phpThumb->setParameter('h', 470); //change to update the picture size
$phpThumb->setParameter('fltr[]', 'mask|path/to/mask/mask.png'); //set mask
$phpThumb->setParameter('f', 'png'); //set png output format
$outputdir = $_SERVER['DOCUMENT_ROOT'] . $destination;
$output_filename = $outputdir . "masked" . $file;
$phpThumb->setParameter('config_allow_src_above_docroot', true);
if ($phpThumb->GenerateThumbnail()) { // this line is VERY important, do not remove it!
if ($phpThumb->RenderToFile($output_filename)) {
...