2015-06-04 108 views
0

我有一個圖像定製插件,舞臺尺寸爲1000x700,用戶可以上傳他/她的圖片並在舞臺區域進行設計。使用gd或imagick調整圖像大小,使其覆蓋透明部分

現在,如果用戶沒有使用完整的臨時區域並只使用舞臺的某個部分,比如說800x400。我的最終圖像將爲1000x700,透明背景中間有用戶設計。

現在的問題是,我想在滿白色背景的全畫布上伸展用戶設計。

我該如何使用php GD或imagick(而不是手動)來做到這一點?

回答

0
$dstImage = imagecreatetruecolor(1000, 700); 
    $black = imagecolorallocate($dstImage, 0, 0, 0); 

    // Make the background transparent 
    imagecolortransparent($dstImage, $black); 

    $srcImage = imagecreatefrompng('srcImg.png'); 
    imagecopymerge($dstImage, $srcImage, 0, 0, 0, 800, 400, 1000, 700); 
    imagepng($dstImage, 'outputNewImg.png');