用php写一个 从左到右透明渐变 图片 最右侧为不透色 宽度为500 高度为50
时间: 2024-02-25 15:59:48 浏览: 70
html 透明度渐变
好的,以下是 PHP 代码实现:
```php
<?php
// 创建一个宽度为 500,高度为 50 的空白图片
$image = imagecreatetruecolor(500, 50);
// 定义渐变起始颜色和结束颜色
$start_color = imagecolorallocatealpha($image, 255, 255, 255, 0); // 完全透明的白色
$end_color = imagecolorallocatealpha($image, 255, 255, 255, 127); // 半透明的白色
// 循环遍历每一列像素填充颜色实现渐变效果
for ($x = 0; $x < 500; $x++) {
$alpha = (int) ($x / 500 * 127); // 计算当前列的透明度
$color = imagecolorallocatealpha($image, 255, 255, 255, $alpha); // 计算当前列的颜色
imageline($image, $x, 0, $x, 49, $color); // 填充当前列的颜色
}
// 设置最右侧为不透明的白色
imagefilledrectangle($image, 499, 0, 499, 49, $start_color);
// 设置输出图片的格式为 PNG
header('Content-Type: image/png');
// 输出图片到浏览器
imagepng($image);
// 销毁图片资源
imagedestroy($image);
?>
```
这段代码使用 PHP GD 库创建了一个宽度为 500,高度为 50 的空白图片,并使用 imageline() 函数循环遍历每一列像素填充颜色实现渐变效果。最后使用 imagefilledrectangle() 函数将最右侧的像素设置为不透明的白色。最终输出的图片格式为 PNG,可以直接在浏览器中查看或下载。
阅读全文