+
95
-

微信小程序canvas 不支持css的opacity透明度设置怎么办?

微信小程序canvas 不支持css的opacity透明度设置怎么办?


网友回复

+
6
-

在微信小程序中,canvas 确实不直接支持 CSS 的 opacity 透明度设置,但可以通过以下几种方法来实现类似的透明度效果:

1. 设置绘制图形或文本时的透明度

在 canvas 中,可以使用 globalAlpha 属性来设置后续绘制内容的透明度。该属性的值范围是从 0.0(完全透明)到 1.0(完全不透明)。

示例代码
<!-- index.wxml -->
<canvas canvas-id="myCanvas"></canvas>
// index.js
Page({
  onReady() {
    const ctx = wx.createCanvasContext('myCanvas');

    // 设置透明度为 0.5
    ctx.globalAlpha = 0.5;

    // 绘制一个填充矩形
    ctx.setFillStyle('red');
    ctx.fillRect(50, 50, 100, 100);

    // 绘制完成
    ctx.draw();
  }
})
代码解释ctx.globalAlpha = 0.5;:设置后续绘制内容的透明度为 0.5。ctx.fillRect(50, 50, 100, 100);:在 canvas 上绘制一个红色的填充矩形。2. 使用透明度颜色值

在绘制图形或文本时,可以使用包含透明度信息的颜色值,如 rgba() 或 hsla()。

示例代码
<!--...

点击查看剩余70%

我知道答案,我要回答