我正在discord.js
中建立一个waifu gacha游戏,想知道是否可以发送包含多张图片的嵌入图片?与此相同
(https://pm1.narvii.com/7022/e92995beeea9d48d4344c7fcdd97bedbf3fd4d13r1-1920-1080v2_hq.jpg)
如果需要,这是我的嵌入代码:
number = Math.floor(Math.random() * animechr.characters.length);
oof = animechr.characters[number]["name"]
oof2 = animechr.characters[number]["image_url"]
const waifu = new Discord.RichEmbed()
.setAuthor(anime.title)
.setThumbnail(oof2)
.setTitle(oof)
.setTimestamp()
.setFooter('Pulled time:')
message.channel.sendEmbed(waifu)
尽管我不知道如何实现这一目标,但除.setImage
和.setThumbnail
之外,我真的没有任何依据。
答案 0 :(得分:0)
是,不是。
您可以同时使用嵌入的图像和缩略图属性,但这将您限制为两个图像,两个图像的显示方式不同。您可以将文件附加到邮件中,但是它们会与嵌入文件分开显示。
我的建议是与canvas
一起加载多个图像,将画布另存为PNG,并将其设置为嵌入图像。从本质上讲,它将是图像的拼贴,使您可以将所有图像显示在嵌入中。
答案 1 :(得分:0)
如果需要,还可以在某些内容旁边添加小图像。在这里查看代码。 .setAuthor和.setFooter属性在Embed上都使用非常小的图像。
const myEmbed = new Discord.RichEmbed()
.setColor('#0099ff')
.setTitle('Add Jerseyetr')
.setURL('https://steamcommunity.com/id/jerseyetr')
.setAuthor('Midnight Bot', 'IMAGE FILE HERE', 'censored')
.setDescription('')
.setThumbnail('IMAGE FILE HERE')
.addField('How to Gain Access to the Server', '1. Go to the Rules Section and read the rules \n2. Add Jerseyetr on Steam. Link above \n3. Download and install our mods. Check the #information Channel for info')
.addBlankField()
.addField('Mods download:', 'censored', true)
.addField('how to install mods', 'censored', true)
.addField('Vote for our Server', 'censored', true)
.setImage('IMAGE FILE HERE')
.setTimestamp()
.setFooter('Updated 5/20', 'IMAGE FILE HERE');
channel.send(myEmbed);
.setAuthor属性包含一个小缩略图
答案 2 :(得分:0)
实际上有一种方法。 Webhook消息每条消息最多可包含10个嵌入。因此,您可以使用Webhook发送10个嵌入,每个嵌入包含一个图像。
该图像应该具有宽度和高度字段documented here,但是我看不到嵌入对象或RichEmbed的任何方式,因此您必须调整要使用的图像的大小,以便它们大小相同。
在您的情况下,懒散的想法:将图像合并到一个画布中并进行渲染,会更好,更接近您共享的图片
const client = new Discord.Client();
const hook = new Discord.WebhookClient(webHook.id, webHook.token);
client.on('ready', () => {
console.log('Starting!');
client.user.setActivity(config.activity);
});
client.on('message', async (msg) => {
if (msg.author.bot) { return; }
sendImage();
});
let webHook = {
token: "token-webhook",
id: "id-webhook"
};
let img = [
'https://i.imgur.com/ezC66kZ.png',
'https://i.imgur.com/wSTFkRM.png'
];
function sendImage() {
let embeds = [];
embeds.push(new Discord.RichEmbed()
.setTitle('First Messages')
.setImage(img[0])
.setTimestamp()
.setFooter('Pulled time:'));
embeds.push(new Discord.RichEmbed()
.setTitle('First Messages')
.setImage(img[1])
.setTimestamp()
.setFooter('Pulled time:'));
hook.send({embeds: embeds});
}
client.login(config.token)
.then(() => console.log("We're in!"))
.catch((err) => console.log(err));