Yardım node.js Canvas

Zuziâ RodzeN#9988
Katılım
2 Ara 2022
Mesajlar
9
Tepkime puanı
0
Şehir
Konya
Canvas ile botlar için hoş geldin bay bay kartı yapıyorum ama params dan çektiği çektiği avatarı resme eklemiyo ve Cannot GET /rankcard/avatar= hatası veriyor yardım ederseniz sevinirim.

Kod:
const Canvas = require('canvas')
app.get('/rankcard/avatar=:avatar',async (req, res) => {
const canvas = Canvas.createCanvas(750, 250);
const ctx = canvas.getContext('2d');
Canvas.registerFont('./font/Muli.ttf', { family: 'Muli' })
 Canvas.registerFont('./font/Nunito-Bold.ttf', { family: 'Nunito' })   
    const background = await Canvas.loadImage('./image/2.png');
    ctx.drawImage(background, 0, 0, canvas.width, canvas.height);
     ctx.font = '36px "Nunito"'
ctx.rotate(0)
ctx.fillText('SakuraBot', 257, 164)

    ctx.strokeRect(0, 0, canvas.width, canvas.height);
    ctx.beginPath();
    ctx.arc(125, 125, 100, 0, Math.PI * 2, true);
    ctx.closePath();
    ctx.clip();

    const avatar = await Canvas.loadImage(req.params.avatar);
    ctx.drawImage(avatar, 25, 25, 200, 200);
    
    const buffer = canvas.toBuffer('image/png');
  res.writeHead(200, { 'Content-Type': 'image/png' });
  res.end(buffer);
    
    
})
 
alperen.php#7777
Katılım
6 Ocak 2022
Mesajlar
10
Tepkime puanı
3
Şehir
Adana
Selam http protokolü ile alakalı olduğunu düşünüyorum. Deneyebilir misin?

JavaScript:
const Canvas = require('canvas');
app.get('/rankcard/avatar=:avatar', async (req, res) => {
  const canvas = Canvas.createCanvas(750, 250);
  const ctx = canvas.getContext('2d');
  Canvas.registerFont('./font/Muli.ttf', { family: 'Muli' });
  Canvas.registerFont('./font/Nunito-Bold.ttf', { family: 'Nunito' });   
  const background = await Canvas.loadImage('./image/2.png');
  ctx.drawImage(background, 0, 0, canvas.width, canvas.height);
  ctx.font = '36px "Nunito"';
  ctx.rotate(0);
  ctx.fillText('SakuraBot', 257, 164);

  ctx.strokeRect(0, 0, canvas.width, canvas.height);
  ctx.beginPath();
  ctx.arc(125, 125, 100, 0, Math.PI * 2, true);
  ctx.closePath();
  ctx.clip();

  // Add 'https:' or 'http:' to the URL to make it a valid URL
  const avatar = await Canvas.loadImage(`https:${req.params.avatar}`);
  ctx.drawImage(avatar, 25, 25, 200, 200);

  const buffer = canvas.toBuffer('image/png');
  res.writeHead(200, { 'Content-Type': 'image/png' });
  res.end(buffer);
});
 
Konu Sahibi
Zuzi
Zuziâ RodzeN#9988
Katılım
2 Ara 2022
Mesajlar
9
Tepkime puanı
0
Şehir
Konya
Selam http protokolü ile alakalı olduğunu düşünüyorum. Deneyebilir misin?

JavaScript:
const Canvas = require('canvas');
app.get('/rankcard/avatar=:avatar', async (req, res) => {
  const canvas = Canvas.createCanvas(750, 250);
  const ctx = canvas.getContext('2d');
  Canvas.registerFont('./font/Muli.ttf', { family: 'Muli' });
  Canvas.registerFont('./font/Nunito-Bold.ttf', { family: 'Nunito' });  
  const background = await Canvas.loadImage('./image/2.png');
  ctx.drawImage(background, 0, 0, canvas.width, canvas.height);
  ctx.font = '36px "Nunito"';
  ctx.rotate(0);
  ctx.fillText('SakuraBot', 257, 164);

  ctx.strokeRect(0, 0, canvas.width, canvas.height);
  ctx.beginPath();
  ctx.arc(125, 125, 100, 0, Math.PI * 2, true);
  ctx.closePath();
  ctx.clip();

  // Add 'https:' or 'http:' to the URL to make it a valid URL
  const avatar = await Canvas.loadImage(`https:${req.params.avatar}`);
  ctx.drawImage(avatar, 25, 25, 200, 200);

  const buffer = canvas.toBuffer('image/png');
  res.writeHead(200, { 'Content-Type': 'image/png' });
  res.end(buffer);
});
query ile ayarlamaya çalışıyorum ondan öncede discorda bağlaıp kullanıcı ID ile yaptım ama arka plan için mecbur ayarlamam lazım
 
Konu Sahibi
Zuzi
Zuziâ RodzeN#9988
Katılım
2 Ara 2022
Mesajlar
9
Tepkime puanı
0
Şehir
Konya
Sorun hala devam ediyor mu? detaylı paylaşabilir misin
sorun şuan farklı şekilde ilerliyor arka plan resmi olarak req.query.back olarak kullanıyorum ama içine yazı ekleyince hata veriyor büyük ihtimal daha detaylı araştırıp yapacağım olmazsa yapmayacağım.
 

Konuyu 0 kişi okuyor. (0 kayıtlı üye ve 0 ziyaretçi)

  • Bilgi