如何解决Canvas 中不显示字符
当我尝试使用 Canvas 在图片上显示文本时,某些字符和表情符号在 Windows 和 Ubuntu 上显示不正确。 1 个屏幕 - 在 Windows 上,2 个屏幕 - 在 Ubuntu 上。对于任何字体,情况都是如此。画布在 Windows 上,在 Ubuntu 上我刚刚通过 npm install canvas
安装。
视窗
Ubuntu
代码:
const canvas = Canvas.createCanvas(1000,333)
const ctx = canvas.getContext('2d');
const background = await Canvas.loadImage('https://i.imgur.com/YzwG7yk.jpeg')
ctx.drawImage(background,canvas.width,canvas.height)
ctx.font = '300 30px "Arial"'
ctx.fillStyle = '#ffffff'
ctx.fillText(`???\nマークとニック\nP???z?k`,70,70)
const attachment = new discord.MessageAttachment(canvas.toBuffer(),'xp.png');
return message.channel.send(attachment)
解决方法
您需要在服务器上安装能够呈现这些字形的字体。
如果您无法控制服务器上的字体,则可以使用 registerFont
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。