const { createCanvas, loadImage } = require('@napi-rs/canvas'); const axios = require('axios'); const FormData = require('form-data'); async function imgbb(image) { var { data: html, headers } = await axios.get('https://imgbb.com/'); var token = html.match(/auth_token\s*=\s*["']([a-f0-9]+)["']/)?.[1]; var form = new FormData(); form.append('source', image, `${Date.now()}_rfourlovesyou.jpg`); form.append('type', 'file'); form.append('action', 'upload'); form.append('timestamp', Date.now().toString()); form.append('auth_token', token); var { data } = await axios.post('https://imgbb.com/json', form, { headers: { ...form.getHeaders(), cookie: headers['set-cookie'].join('; '), origin: 'https://imgbb.com', referer: 'https://imgbb.com/', 'user-agent': 'Mozilla/5.0 (Linux; Android 15; SM-F958 Build/AP3A.240905.015) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.6723.86 Mobile Safari/537.36' } }); return data.image.image; } async function gataulah(overlayurl) { var baseurl = "https://files.catbox.moe/nip43r.jpg"; var bx = 0, by = 240, bw = 1280, bh = 856; var baseRes = await fetch(baseurl, { headers: { 'User-Agent': 'Mozilla/5.0' } }); var baseBuf = Buffer.from(await baseRes.arrayBuffer()); var base = await loadImage(baseBuf); var ovRes = await fetch(overlayurl, { headers: { 'User-Agent': 'Mozilla/5.0' } }); var ovBuf = Buffer.from(await ovRes.arrayBuffer()); var ov = await loadImage(ovBuf); var canvas = createCanvas(base.width, base.height); var ctx = canvas.getContext("2d"); ctx.imageSmoothingEnabled = true; ctx.imageSmoothingQuality = 'high'; ctx.drawImage(base, 0, 0, base.width, base.height); var sx = base.width / 1280, sy = base.height / 1283; var tx = bx * sx, ty = by * sy, tw = bw * sx, th = bh * sy; var ovRatio = ov.width / ov.height; var boxRatio = tw / th; var cx, cy, cw, ch; if (ovRatio > boxRatio) { ch = ov.height; cw = ch * boxRatio; cx = (ov.width - cw) / 2; cy = 0; } else { cw = ov.width; ch = cw / boxRatio; cx = 0; cy = (ov.height - ch) / 2; } ctx.drawImage(ov, cx, cy, cw, ch, tx, ty, tw, th); var png = await canvas.encode('png'); var url = await imgbb(png); return url; } gataulah("https://wallpaperswide.com/download/the_host-wallpaper-1280x720.jpg").then(console.log);