ImageMagick 是一個功能強大的命令行工具,用于處理圖像。在 PHP 中,可以使用 Imagick 擴展庫來處理透明圖像。以下是一些使用 Imagick 處理透明圖像的示例:
<?php
$image = new Imagick();
$image->newImage(300, 200, Imagick::COLORSPACE_TRANSPARENT, 1);
$image->setImageFormat('png');
$image->writeImage('transparent_image.png');
$image->clear();
$image->destroy();
?>
<?php
$image = new Imagick('input_image.jpg');
$transparent = new Imagick();
$transparent->newImage(300, 200, Imagick::COLORSPACE_TRANSPARENT, 1);
$transparent->setImageFormat('png');
$image->setImageBackgroundColor(new ImagickPixel('white'));
$image->compositeImage($transparent, Imagick::COMPOSITE_OVER, 0, 0);
$image->setImageFormat('png');
$image->writeImage('image_with_transparent_background.png');
$image->clear();
$image->destroy();
$transparent->clear();
$transparent->destroy();
?>
<?php
$image = new Imagick('input_image.jpg');
$pixel_wand = new ImagickPixel('black');
$pixel_wand->setAlpha(0.5); // 設置透明度為 50%
$image->floodFillPaintImage($pixel_wand, 50, 50, Imagick::COLORSPACE_TRANSPARENT);
$image->setImageFormat('png');
$image->writeImage('image_with_transparent_fill.png');
$image->clear();
$image->destroy();
?>
<?php
$image = new Imagick('input_image.jpg');
$image->rotateImage(45, Imagick::FILTER_LANCZOS, 1);
$image->setImageFormat('png');
$image->writeImage('rotated_transparent_image.png');
$image->clear();
$image->destroy();
?>
這些示例展示了如何使用 PHP Imagick 處理透明圖像。你可以根據需要調整這些示例以滿足你的具體需求。