大佬你的这个问题解决了吗? 我现在也遇到相同的问题
云函数安装部署canvas后,运行报错canvas.node: invalid ELF heade?云函数安装部署完canvas 安装没有发生问题,一切正常 [图片] 但是调用云函数后,一直报错,错误代码如下: [图片] 实在不知道怎么办了,请各位大神指点!!!!感激不尽! 同时提供云函数的源码,源码其实不完整,主要是想运行看看,不知道是源码的问题,还是canvas包安装的问题? // 云函数入口文件 const cloud = require('wx-server-sdk') const { createCanvas, loadImage } = require('canvas') cloud.init({ env: 'cloud1-7g1pdoii23b288bf' }) // 云函数入口函数 exports.main = async (event, context) => { console.log(event) //开始绘制-------------------------------------------------------------------- const canvas = createCanvas(400, 400) const ctx = canvas.getContext('2d') // Canvas 画布的实际绘制宽高 const renderWidth = 400 const renderHeight = 400 // 绘制前清空画布 ctx.clearRect(0, 0, renderWidth, renderHeight) // 绘制印章边框 var width = renderWidth/2 var height = renderHeight/2 console.log('width:',width) console.log('height:',height) ctx.lineWidth=2 ctx.strokeStyle="#f00" ctx.arc(width,height,78,0,Math.PI*2); ctx.stroke() //画五角星 create5star(ctx,width,height,25,"#f00",0); // 绘制印章单位 var company = event.seal console.log('company:',company) ctx.translate(width,height);// 平移到此位置, ctx.font = '20px NSimSun' ctx.fillStyle="#f00"; var count = company.length;// 字数 console.log('字数:',count) var angle = 4*Math.PI/(3*(count - 1));// 字间角度 var chars = company.split(""); var c; // ctx.transform(1,0,0,0,0,0) for (var i = 0; i < count; i++){ c = chars[i];// 需要绘制的字符 if(i==0) ctx.rotate(5*Math.PI/6); else ctx.rotate(angle); ctx.save(); ctx.translate(60, 0);// 平移到此位置,此时字和x轴垂直 ctx.rotate(Math.PI/2);// 旋转90度,让字平行于x轴 ctx.fillText(c,-10, 5);// 此点为字的中心点 ctx.restore(); } console.log('绘制结束') //绘制五角星 function create5star(ctx,sx,sy,radius,color,rotato){ ctx.save(); ctx.fillStyle=color; ctx.translate(sx,sy);//移动坐标原点 ctx.rotate(Math.PI+rotato);//旋转 ctx.beginPath();//创建路径 var x = Math.sin(0); var y= Math.cos(0); var dig = Math.PI/5 *4; for(var i = 0;i< 5;i++){//画五角星的五条边 var x = Math.sin(i*dig); var y = Math.cos(i*dig); ctx.lineTo(x*radius,y*radius); } ctx.closePath(); ctx.stroke(); ctx.fill(); ctx.restore(); } //绘制结束------------------------------------------------- return { } }
2023-03-10