如何使用 RMagick 渲染透明渐变?
想要使用 RMagick 创建从 rgba(0,0,0,0.3) 到 rgba(0,0,0,0.7) 的渐变 PNG 图像。这可能吗?
Want to use RMagick to create a PNG image of a gradient that goes from rgba(0,0,0,0.3) to rgba(0,0,0,0.7). Is this possible?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我想这是不可能的。如果您在此处查看c代码 您将看到不透明度自动设置为 OpaqueOpacity。此外,如果您查看填充的实现方式,您会发现它们只写入图像。
另一方面,它可以在较低的水平上完成。如果不透明度始终相同,则可以使用 ImageList,然后将其展平。
I guess it cannot be done. If you take a look at c code in here you will see that opacity is automatically set to OpaqueOpacity. Furthermore, if you take a look at how fills are implemented, they only write the image.
On the other hand, it could be done at a lower level. If the opacity is always the same, you can use an ImageList and then flatten it.
有一种方法可以使用 RMagick 生成透明渐变图像
渐变内置格式和
Image.read()
:这与在命令行中运行以下命令相同:
There is a way to generate a transparent gradient image from within RMagick by using the
Gradient Built-in Format and
Image.read()
:This is the same as running the following in the command line: