From 861b6bf6e36fd62e62600342ac845037a3b25375 Mon Sep 17 00:00:00 2001 From: loicbersier Date: Sun, 14 Oct 2018 15:39:15 +0200 Subject: [PATCH] text will less go out of the paper ( but still do idk how to do word wrap ) --- commands/fun/idubbbz.js | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/commands/fun/idubbbz.js b/commands/fun/idubbbz.js index 68929d4a..b4ffadba 100644 --- a/commands/fun/idubbbz.js +++ b/commands/fun/idubbbz.js @@ -14,7 +14,7 @@ module.exports = class idubbbzCommand extends Command { description: `Put the text you send in idubbbz piece of paper`, args: [ { - key: 'text', + key: 'test', prompt: 'What do you the paper to say?', type: 'string', default: 'Nigger Faggot' @@ -23,7 +23,7 @@ module.exports = class idubbbzCommand extends Command { }); } - async run(message, { text }) { + async run(message, { test }) { let Attachment = (message.attachments).array(); let image = null if (!Attachment[0]) @@ -31,6 +31,7 @@ module.exports = class idubbbzCommand extends Command { else image = Attachment[0].url + const canvas = createCanvas(1281, 627) const applyText = (canvas, text) => { const ctx = canvas.getContext('2d'); @@ -40,26 +41,24 @@ module.exports = class idubbbzCommand extends Command { do { // Assign the font to the context and decrement it so it can be measured again ctx.font = `${fontSize -= 10}px sans-serif`; - // Compare pixel width of the text to the canvas minus the approximate avatar size - } while (ctx.measureText(text).width > canvas.width - 300); + } while (ctx.measureText(text).width > 950 - canvas.height); // Return the result to use in the actual canvas return ctx.font; }; - const canvas = createCanvas(1281, 627) const ctx = canvas.getContext('2d') const background = await loadImage(image); ctx.drawImage(background, 620, 100, 200, 200); const { body: buffer } = await superagent.get('https://image.noelshack.com/fichiers/2018/41/7/1539510207-untitled.png'); const bg = await loadImage(buffer); ctx.drawImage(bg, 0, 0, canvas.width, canvas.height); - ctx.font = applyText(canvas, text) + ctx.font = applyText(canvas, test) //ctx.font = '40px sans-serif'; // Select the style that will be used to fill the text in ctx.fillStyle = '#000000'; // Actually fill the text with a solid color - ctx.fillText(text, canvas.width / 2.1, canvas.height / 1.5); + ctx.fillText(test, canvas.width / 2.1, canvas.height / 1.5); const attachment = new Discord.Attachment(canvas.toBuffer(), 'test.png');