[英]WideImage - Canvas with transparent background
我們正在使用內置WideImage的CMS,無法改變這一點,但是我們遇到了需要生成300x300圖像的情況。
然而,以jpg和png格式上傳的大約100x100的圖像具有各種透明度。
我正在嘗試創建一個300x300的畫布,並將100x100圖像放在其中 - 但我希望畫布保持透明,並將圖像放在頂部以保持透明度。
我有
$image = WideImage::loadFromFile( $this->local_path );
$canvas = WideImage::createTrueColorImage(300, 300);
$canvas_bg = $canvas->allocateColor(255, 255, 255);
$canvas->fill(0, 0, $canvas_bg);
$resized_image = $canvas->merge($image);
然而,這顯然只是在畫布上添加了白色背景,我無法從他們的文檔中找出如何使其透明。
謝謝
怎么樣:
$image = WideImage::loadFromFile($this->local_path);
$resized_image = $image->resizeCanvas(300, 300, 0, 0);
您可以在新畫布中指定圖像的X和Y位置以及寬度和高度。 $image->resizeCanvas(300, 300, "center", "center")
效果很好。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.