在 PHP Canvas 中,我们可以使用 header()
函数将内容类型设置为图像,然后使用 GD 库或 ImageMagick 库创建动画
首先,确保你的 PHP 安装支持 GIF 图像。这是一个简单的例子,展示了如何在 PHP Canvas 中创建一个基本的动画:
<?php
header('Content-Type: image/gif');
$width = 200;
$height = 200;
// 创建一个新的 GIF 图像
$image = new Imagick();
$image->newImage($width, $height, new ImagickPixel('white'));
// 设置动画参数
$delay = 100; // 帧之间的延迟(以毫秒为单位)
$loops = 0; // 动画循环次数,0 表示无限循环
for ($i = 0; $i < 10; $i++) {
// 创建一个新的画布
$frame = new Imagick();
$frame->newImage($width, $height, new ImagickPixel('white'));
// 在画布上绘制一个圆形
$draw = new ImagickDraw();
$draw->setFillColor(new ImagickPixel('blue'));
$draw->circle($width / 2, $height / 2, $width / 2 + $i * 10, $height / 2);
$frame->drawImage($draw);
// 添加帧到动画中
$frame->setImageDelay($delay);
$image->addImage($frame);
}
// 设置动画循环次数
$image->setIterations($loops);
// 输出动画
echo $image->getImagesBlob();
?>
这个例子会创建一个包含 10 帧的 GIF 动画。每帧都显示一个不断增大的蓝色圆形。你可以根据需要修改这个例子,以创建更复杂的动画。