2016-04-24 32 views
3

是否有任何方法可以从PHP中的方形图像中切除任何形状?从图像中切出任何形状(Imagik/Gd)

例如,我有图像与心脏形状:

enter image description here

在像心脏相同大小的另一个图像。

最终图像:

enter image description here

所以我的问题是有没有PHP的方式,利用两个图像,或一幅图像这样的效果?

回答

2

你基本上只是想将心脏模板的不透明度复制到汽车图片中。因此,在命令行,你会怎么做:

convert motor.jpg heart.png -compose copyopacity -composite result.png 

enter image description here

而在PHP:

#!/usr/local/bin/php -f 
<?php 
    $template=new Imagick('heart.png'); 
    $image =new Imagick('motor.jpg'); 

    # Copy alpha from template over car image 
    $image->compositeImage($template,imagick::COMPOSITE_COPYOPACITY,0,0); 
    $image->writeImage('result.png'); 
?>