php - 如何动态生成带有 alpha 渐变的图像?

标签 php javascript gd gradient alpha-transparency

我正在寻找一种方法来动态创建具有羽化边缘的椭圆(并且能够控制羽化程度)。理想情况下,这可以通过 Javascript 来实现,因为预期用途是在可以离线使用的应用程序中,但为了简单起见,我对 PHP 解决方案感到满意。

我确实尝试过使用 GD 的解决方案,但是我发现它在处理 alpha 时非常有限。主要问题是使用填充椭圆和分层会抵消透明效果,并且仅用逐渐变小的椭圆绘制边框会导致椭圆无法完美对齐的问题(见下图)。

<强> Example

有没有一种解决方案可以消除这些问题,而又不会变得太复杂?我知道我可以逐像素创建图像,但这似乎是一个非常复杂的方法,而这本应是一项相对简单的任务。

最佳答案

这是一个使用标签的示例,看起来它可能会让您走上正确的道路:

http://nixtu.blogspot.com/2010/07/html5-canvas-gradients-radial-gradient.html

这是一个 fiddle ,显示了我认为您可能正在寻找的内容:

http://jsfiddle.net/hgZt7/2/

关于php - 如何动态生成带有 alpha 渐变的图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5085970/

相关文章:

javascript - THREE.js TrackballControls 如何将旋转中心更改为不在 Canvas 中心?

javascript - 如何将 x 名玩家多次随机分成 2 队,每次都不同?

php - 如何在 linux 上的 xampp 中的 php GD 库中启用 Webp 支持

php - IMG_FILTER_CONTRAST 图像过滤器的限制是什么

php - 如何使用 PHP 找到图像的 "majority colors"?

javascript - 使用php和mysql的条形图

php - 在对象上使用 add() 后如何检索插入的 ID?

php - CURLOPT_CONNECTTIMEOUT 不工作

php - 计算多个表中的行数

javascript - 使用 requirejs 和 grunt 构建多客户端项目