Javascript 为什么repl.it不能加载默认字体配置?
信息:在此文件中使用NodeJS、Discord.js和canvas,以及repl.it宿主 这段代码在我的本地机器上运行,但在移动到repl.it托管它时,我得到了下面的错误“Fontconfig错误:无法加载默认配置文件”代码Javascript 为什么repl.it不能加载默认字体配置?,javascript,node.js,discord.js,node-canvas,Javascript,Node.js,Discord.js,Node Canvas,信息:在此文件中使用NodeJS、Discord.js和canvas,以及repl.it宿主 这段代码在我的本地机器上运行,但在移动到repl.it托管它时,我得到了下面的错误“Fontconfig错误:无法加载默认配置文件”代码 const Canvas = require('canvas') const { MessageAttachment } = require('discord.js') const path = require('path') module.exports = (c
const Canvas = require('canvas')
const { MessageAttachment } = require('discord.js')
const path = require('path')
module.exports = (client) => {
client.on('guildMemberAdd', async (member) => {
const { guild } = member
const channelId = "830958927674998815"
if (!channelId) {
return
}
const channel = guild.channels.cache.get(channelId)
if (!channel) {
return
}
const canvas = Canvas.createCanvas(700, 250)
const ctx = canvas.getContext('2d')
const background = await Canvas.loadImage(
path.join(__dirname, '../background.png')
)
let x = 0
let y = 0
ctx.drawImage(background, x, y)
const pfp = await Canvas.loadImage(
member.user.displayAvatarURL({
format: 'png',
})
)
x = canvas.width / 2 - pfp.width / 2
y = 25
ctx.drawImage(pfp, x, y)
ctx.fillStyle = '#ffffff'
ctx.font = '35px sans-serif'
let text = `Welcome ${member.user.tag}`
x = canvas.width / 2 - ctx.measureText(text).width / 2
ctx.fillText(text, x, 60 + pfp.height)
ctx.font = '30px sans-serif'
text = `Member #${guild.memberCount}`
x = canvas.width / 2 - ctx.measureText(text).width / 2
ctx.fillText(text, x, 100 + pfp.height)
const attachment = new MessageAttachment(canvas.toBuffer())
channel.send('', attachment)
})
}```
我对Discord.js或您可能正在使用的某些框架一无所知,但如果它在Web浏览器中运行,您可以使用Firefox或Chrome中的开发人员工具(Ctrl+Shift+I)通过查看网络(选项卡)来解决此问题以及重新加载和检查repl.it主机返回的字体资源请求响应——特别是媒体类型和HTTP状态代码,应该会有所帮助。它不在web上。discord.js是一个在discord平台(一个有聊天和语音频道的服务器网络)上制作机器人的框架。好的,我看到你用Node.js运行它。我会检查HTTP响应代码,查看您使用上面的代码生成的请求。你从哪一行得到“Fontconfig错误”,如果有的话?实际上并没有说是哪一行,但我假设是在我做ctx.font的那一行