Bepul Rasmdan ASCII San'atga Konvertor

Istalgan rasmni chat, README, terminal yoki commit xabarlari uchun ASCII san'atga aylantiring. Blok belgilar va emoji jumladan bir nechta belgilar to'plami.

Yuklangandan keyin oflayn ishlaydi

Fayllarni shu yerga tashlang yoki ko'rish uchun bosing

JPG, PNG, WebP, GIF, HEIC, HEIF · Fayl hajmi cheklovsiz

yoki buferdan joylash uchun Ctrl+V bosing

Fayllarni ko'rish

Maslahat: Ctrl+V bilan skrinshot joylashtirsangiz bo'ladi

Fayllaringiz qurilmangizdan hech qachon chiqmaydi. Barcha ishlov berish brauzeringizda mahalliy tarzda amalga oshiriladi.

Qanday ishlaydi

O'girish Canvas API yordamida to'liq brauzeringizda sodir bo'ladi — server yo'q, yuklash yo'q. Asbob rasmingizni maqsad ustun kengligiga masshtablangan ekrandan tashqari kanvasga chizadi, getImageData orqali har bir pikselning RGB qiymatlarini o'qiydi va har bir pikselning perseptual yorqinligini siz tanlagan qidiruv satridagi belgiga xaritalaydi.

  1. 1
    Canvas rasmni masshtablaydi
    Rasmingiz aynan chiqish panjarasiga mos o'lchamdagi yashirin kanvasga chiziladi — odatda standart bo'yicha 80 ustun kenglikda, balandlik esa rasmning tomonlar nisbatini saqlash uchun avtomatik moslashtiriladi (kenglikdan balandroq monospace shriftlar uchun yarmiga kamaytirilgan).
  2. 2
    Piksel-bo-piksel yorug'lik namunasi
    Asbob har bir katak uchun xom RGBA baytlarni o'qish uchun getImageData ni chaqiradi. U har bir pikselni ITU-R perseptual formulasi (0.299R + 0.587G + 0.114B) yordamida yagona yorqinlik qiymatiga o'giradi, so'ng yorqinlik siljishingiz, kontrast ko'paytiruvchingiz va gamma egri chizig'ingizni qo'llaydi.
  3. 3
    Yorqinlik belgiga xaritalanadi
    Tuzatilgan yorqinlik (0–1) tanlangan belgi satrining uzunligiga — standart ( .:-=+*#%@), 70-glifli batafsil, blok elementlari, ikkilik yoki siz yozgan maxsus to'plamga — ko'paytiriladi, va shu indeksdagi belgi chiqish panjarasiga joylashtiriladi.
  4. 4
    Oddiy matn, PNG yoki HTML sifatida eksport
    Tayyor panjara nusxalash/yuklab olish uchun oddiy-matn satriga birlashtiriladi. PNG eksporti uchun, har bir belgi 12px monospace bilan fillText orqali ikkinchi kanvasga chiziladi. Rang rejimi asl RGB'ni har bir piksel bo'yicha o'qiydi va har bir belgini inline-uslublangan span elementiga o'raydi, uni o'z-o'zicha to'liq HTML fayli sifatida eksport qilish mumkin.

Rasmingiz brauzerning Canvas API'si tomonidan to'g'ridan-to'g'ri o'qiladi va hech qachon qurilmangizdan chiqmaydi — hech qanday bosqichda hech qanday ma'lumot hech qanday serverga yuborilmaydi.

Tegishli asboblar

Ko'p so'raladigan savollar