fa
Feedback

فریب کلاهبرداران را نخورید! تل‌متریو این کانال‌ها را شناسایی و برچسب‌گذاری می‌کند 👉 برای مشاهده برچسب، اشتراک تهیه کنید

ᴢʀx

ᴢʀx <x>

رفتن به کانال در Telegram

…..

نمایش بیشتر
کشور مشخص نشده استدسته بندی مشخص نشده است
715
مشترکین
+2324 ساعت
+2207 روز
+30330 روز
آرشیو پست ها

sticker.webp0.80 KB

sticker.webp0.27 KB

Join to participate...

Repost from © ᴢʀx <x>
5 reactions on each count down.

sticker.webp0.26 KB

Cooking 😋😋

photo content

Repost from © ᴢʀx <x>
🤖 WANT YOUR OWN BOT?
✈️ We create custom MD bots, ban bots, SMS bots, bug bots & other custom bots based on exactly what you need. ⚙️ AVAILABLE SERVICES 🔹 Custom bot development 🔹 MD bot setup 🔹 Bot customization 🔹 Source & bot files 🔹 Setup & configuration 🔹 Bug fixing & updates 🔹 Feature additions 💻 NEED A SPECIFIC BOT? Tell us your idea, the features you want, and how you want it to work. We'll discuss the features, price & setup with you. 📁 FILES AVAILABLE We also have bot files, source codes, tools & other digital files available. ✨ Everything can be customized to suit your needs. ━━━━━━━━━━━━━━━━━━━━
📩 DM: @danielisfated

Repost from © ᴢʀx <x>
🤖 WANT YOUR OWN BOT?
✈️ We create custom MD bots, ban bots, SMS bots, bug bots & other custom bots based on exactly what you need. ⚙️ AVAILABLE SERVICES 🔹 Custom bot development 🔹 MD bot setup 🔹 Bot customization 🔹 Source & bot files 🔹 Setup & configuration 🔹 Bug fixing & updates 🔹 Feature additions 💻 NEED A SPECIFIC BOT? Tell us your idea, the features you want, and how you want it to work. We'll discuss the features, price & setup with you. 📁 FILES AVAILABLE We also have bot files, source codes, tools & other digital files available. ✨ Everything can be customized to suit your needs. ━━━━━━━━━━━━━━━━━━━━
📩 DM: @danielisfated

Repost from © ᴢʀx <x>
GIVE CREDITS 
const { createCanvas } = require('canvas')

async function generateTableImage(daniel, from, m, rows, title = 'COMMANDS') {
    const COLS = 3
    const COL_WIDTHS = [280, 520, 280]
    const ROW_H = 60
    const PAD = 20
    const TOTAL_W = COL_WIDTHS.reduce((a, b) => a + b, 0)
    const HEADER_H = 70
    const TITLE_H = 80
    const TOTAL_H = TITLE_H + HEADER_H + rows.length * ROW_H + PAD * 2

    const canvas = createCanvas(TOTAL_W, TOTAL_H)
    const ctx = canvas.getContext('2d')

    // Background (dark green like screenshot)
    ctx.fillStyle = '#0b3d2e'
    ctx.fillRect(0, 0, TOTAL_W, TOTAL_H)

    // Title bar
    ctx.fillStyle = '#145a3f'
    ctx.fillRect(0, 0, TOTAL_W, TITLE_H)
    ctx.fillStyle = '#ffffff'
    ctx.font = 'bold 36px Arial'
    ctx.textAlign = 'center'
    ctx.fillText(title, TOTAL_W / 2, TITLE_H / 2 + 12)

    // Column headers
    let y = TITLE_H
    ctx.fillStyle = '#1f6d4a'
    ctx.fillRect(0, y, TOTAL_W, HEADER_H)
    ctx.fillStyle = '#ffffff'
    ctx.font = 'bold 24px Arial'
    ctx.textAlign = 'left'

    const headers = ['COMMAND', 'DESCRIPTION', 'USAGE']
    let x = PAD
    headers.forEach((h, i) => {
        ctx.fillText(h, x + 12, y + HEADER_H / 2 + 8)
        x += COL_WIDTHS[i]
    })

    // Vertical grid lines
    ctx.strokeStyle = '#2a8a5f'
    ctx.lineWidth = 1
    x = 0
    COL_WIDTHS.forEach(w => {
        x += w
        ctx.beginPath()
        ctx.moveTo(x, TITLE_H)
        ctx.lineTo(x, TOTAL_H)
        ctx.stroke()
    })

    // Rows
    y += HEADER_H
    ctx.font = '20px Arial'

    rows.forEach((row, ri) => {
        // Alternate row bg
        ctx.fillStyle = ri % 2 === 0 ? '#0e4734' : '#0b3d2e'
        ctx.fillRect(0, y, TOTAL_W, ROW_H)

        // Horizontal line
        ctx.strokeStyle = '#2a8a5f'
        ctx.beginPath()
        ctx.moveTo(0, y + ROW_H)
        ctx.lineTo(TOTAL_W, y + ROW_H)
        ctx.stroke()

        // Cell text
        ctx.fillStyle = '#ffffff'
        x = PAD
        row.forEach((cell, ci) => {
            const maxW = COL_WIDTHS[ci] - 30
            let text = String(cell)
            // Simple truncate if too long
            while (ctx.measureText(text).width > maxW && text.length > 4) {
                text = text.slice(0, -4) + '...'
            }
            ctx.fillText(text, x + 12, y + ROW_H / 2 + 7)
            x += COL_WIDTHS[ci]
        })

        y += ROW_H
    })

    // Send
    const buffer = canvas.toBuffer('image/png')
    await daniel.sendMessage(from, {
        image: buffer,
        caption: `📋 ${title}`
    }, { quoted: m })
}

// ═══════════════ TABLE COMMAND ═══════════════
case 'table':
case 'cmdtable': {
    const rows = [
        ['get',    'Obtiene el JSON completo de un mensaje',   '.get (reply)'],
        ['help',   'Muestra la lista de comandos disponibles', '.help'],
        ['infogc', 'Obtiene info sobre un grupo',              '.infogc / .info link'],
        ['infopv', 'Obtiene datos de un número de WhatsApp',   '.infopv <num>'],
        ['ipinfo', 'Obtiene info sobre una dirección IP',      '.ipinfo <IP>'],
        ['menu',   'Presenta el menú principal del bot',       '.menu'],
        ['revo',   'Revela fotos, videos y audios de Ver Una Vez', '.revo (reply)'],
        ['rv',     'Convierte stickers en fotos o videos',     '.rv (reply)'],
        ['s',      'Crea un sticker desde foto o video',       '.s (reply)'],
        ['tt',     'Descarga videos de TikTok',                '.tt <link>']
    ]
    await generateTableImage(daniel, from, m, rows, 'COMMANDS')
}
break

Wa table maker...

➿➿➿➿➿➿➿➿➿➿➿➿➿➿➿➿➿ ᴛʀᴀхꜱ ᴍᴜʟᴛɪ ʙᴀɴ ʙᴏᴛ 🛡️ ➿➿➿➿➿➿➿➿➿➿➿➿➿➿➿➿➿ ᴍᴜʟᴛɪ-ᴘʟᴀᴛꜰᴏʀᴍ ʙᴀɴ ᴇɴɢɪɴᴇ, ᴀʟʟ ɪɴ ᴏɴᴇ ʙᴏᴛ. ◈ ꜱᴜᴘᴘᴏʀᴛᴇᴅ ᴛᴀʀɢᴇᴛꜱ 🎵
➿➿➿➿➿➿➿➿➿➿➿➿➿➿➿➿➿ ᴛʀᴀхꜱ ᴍᴜʟᴛɪ ʙᴀɴ ʙᴏᴛ 🛡️ ➿➿➿➿➿➿➿➿➿➿➿➿➿➿➿➿➿ ᴍᴜʟᴛɪ-ᴘʟᴀᴛꜰᴏʀᴍ ʙᴀɴ ᴇɴɢɪɴᴇ, ᴀʟʟ ɪɴ ᴏɴᴇ ʙᴏᴛ. ◈ ꜱᴜᴘᴘᴏʀᴛᴇᴅ ᴛᴀʀɢᴇᴛꜱ 🎵 ᴛɪᴋᴛᴏᴋ — ᴍᴀꜱꜱ ʀᴇᴘᴏʀᴛ 📸 ɪɴꜱᴛᴀɢʀᴀᴍ — ᴍᴀꜱꜱ ʀᴇᴘᴏʀᴛ ▶️ ʏᴏᴜᴛᴜʙᴇ — ᴍᴀꜱꜱ ʀᴇᴘᴏʀᴛ ✈️ ᴛᴇʟᴇɢʀᴀᴍ — ꜰᴜʟʟ ꜱᴜɪᴛᴇ 💬 ᴡʜᴀᴛꜱᴀᴘᴘ — ꜰᴜʟʟ ꜱᴜɪᴛᴇ ◈ ɪɴꜱɪᴅᴇ ᴛʜᴇ ᴇɴɢɪɴᴇ 🌐 ɢʟᴏʙᴀʟ ᴘʀᴏхʏ ɴᴏᴅᴇꜱ 📡 ʟɪᴠᴇ ᴀᴛᴛᴀᴄᴋ ᴛᴇʟᴇᴍᴇᴛʀʏ 📋 ᴀᴜᴛᴏ ʙᴀɴ ʀᴇᴘᴏʀᴛꜱ ◈ ᴇᴀʀɴ ᴘᴏɪɴᴛꜱ 🔗 ʀᴇꜰᴇʀ & ᴇᴀʀɴ +2 ᴘᴛꜱ 👑 10 ʀᴇꜰꜱ → ᴘʀᴏ ᴜɴʟᴏᴄᴋ 🎟 ʀᴇᴅᴇᴇᴍ ᴄᴏᴅᴇꜱ 🚀 ᴇɴᴛᴇʀ ɴᴏᴡ http://t.me/Zayden_banx_bot 💬 ɴᴇᴇᴅ ᴘᴏɪɴᴛꜱ ꜰᴀꜱᴛ? ᴅᴍ → @danielisfated ➿➿➿➿➿➿➿➿➿➿➿➿➿➿➿➿➿ ᴊᴏɪɴ · ᴇᴀʀɴ · ᴜɴʟᴇᴀꜱʜ 💀 ➿➿➿➿➿➿➿➿➿➿➿➿➿➿➿➿➿

sticker.webp0.18 KB

4?

sticker.webp0.27 KB