- canvas 2d 在pc 无法绘制图片,并且也无法生成图片,离屏canvas也一样?
如题,在win pc端不论是标签的canvas还是创建的离屏canvas,都不能绘制图片和生成图片。 使用的开发工具版本stable 1.06.2306020 https://developers.weixin.qq.com/s/CxNwP6mq7qJn
2023-06-20 - canvas 2d在PC中不支持使用toDataURL()?
如题~不管是使用<canvas type="2d"/>还是使用wx.createOffscreenCanvas创建的。都无法使用toDataURL
2023-06-03 - getFileSystemManager的readFile无法读取pag文件?
使用 pag 时,想读取本地资源,但无法读取 errMsg: "readFile:fail permission denied, open /static/like.pag" __proto__: Object path: "/static/like.pag" __proto__: Object 但是把pag文件的后缀改成png又能读取,提供代码片段 https://developers.weixin.qq.com/s/eXHZ4umF75Id
2023-05-26 - ios 企业微信 canvas 2d 图片无法onload
如题。。安卓上就没有这个问题 看到有几个贴反映都没下文。。。 打印version显示是7.0.14 [图片][图片]
2021-01-12 - 自定义组件里canvas 2d生成的图片不完整?
在自定义组件里使用canvas 2d,在attached生命周期给组件节点赋值宽高后,绘制完整但生成的图片不完整。 测试机型:小米10和PC 小程序里 [图片] const screen = wx.getSystemInfoSync().windowWidth / 750; function isNumber(value) { return /^-?\d+(\.\d+)?$/.test(value); } function toPx(value, baseSize) { if (typeof value === 'number') { return value } if (isNumber(value)) { return value * 1 } if (typeof value === 'string') { const reg = /(em|rpx|px|%)$/g const results = reg.exec(value); if (!value || !results) { return 0; } const unit = results[1]; value = parseFloat(value); let res = 0; if (unit === 'rpx') { res = Math.floor(value * (screen || 0.5) * 1); } else if (unit === 'px') { res = Math.floor(value * 1); } return res; } } Component({ data: { width: '', height: '', url: '', boundary: { left: 0, top: 0, width: 0, height: 0 } }, lifetimes: { attached() { this.setData({ width: '480rpx', height: '854rpx', }) const dpr = wx.getSystemInfoSync().pixelRatio const query = this.createSelectorQuery() query.select('#canvas') .fields({ node: true, size: true }) .exec((res) => { const canvas = res[0].node const ctx = canvas.getContext('2d') canvas.width = res[0].width * dpr canvas.height = res[0].height * dpr this.setData({ canvas, 'boundary.width': res[0].width, 'boundary.height': res[0].height }) ctx.scale(dpr, dpr) ctx.fillStyle = '#00B2B6' ctx.fillRect(0, 0, canvas.width, canvas.height) ctx.fillStyle = 'red' ctx.fillRect(toPx('20rpx'), toPx('20rpx'), toPx('440rpx'), toPx('600rpx')) }) setTimeout(() => { const { left, top, width, height } = this.data.boundary let destWidth = width * dpr let destHeight = height * dpr const copyArgs = { x: left, y: top, width, height, destWidth, destHeight, canvas: this.data.canvas, success: (res) => { this.triggerEvent('success', res.tempFilePath) }, } wx.canvasToTempFilePath(copyArgs) }, 200); } }, })
2020-12-18