Utilia

Billede til ASCII-kunst

Lav ASCII-kunst af et foto eller billede i din browser. Flere tegnsæt, bredde i tegn, inverter, farvet HTML-output, kopiér eller download som .txt.

Sådan laver du et billede om til ASCII-kunst

  1. Slip et JPG-, PNG-, WebP- eller GIF-billede i dropzonen, eller klik på den for at vælge et. Det konverteres med det samme med standardindstillingerne.
  2. Flyt skyderen Bredde (tegn): flere tegn giver flere detaljer, færre giver et grovere og mere abstrakt udtryk.
  3. Vælg et Tegnsæt: Standard, Detaljeret (70 tegn), Blokke, Enkel, Prikker, To tegn eller Eget. Med Eget skriver du dine egne tegn fra lyseste til mørkeste.
  4. Afkryds Inverter (lys tekst på mørk baggrund), hvis kunsten skal vises på en mørk skærm, for eksempel en terminal.
  5. Afkryds Farve (HTML-output) for at farve hvert tegn med farven fra de oprindelige pixels.
  6. Brug Kopiér tekst, Download .txt eller Download .html. Hver indstilling opdaterer eksemplet med det samme.

Sådan fungerer konverteringen

Billedet får først ændret størrelse, så hvert tegn står for en lille blok pixels. Fordi en tegncelle i en skrifttype med fast bredde er cirka dobbelt så høj som bred, bruger værktøjet omtrent halvt så mange rækker, som et kvadratisk gitter ville kræve; ellers ville kunsten se strakt ud i højden. Et billede på 1000 × 500 med bredden 100 tegn giver 100 × 26 tegn.

For hver blok beregner værktøjet den relative luminans med Rec. 709-vægtene, der bruges til sRGB:

L = 0,2126 × R + 0,7152 × G + 0,0722 × B

Grøn tæller mest, fordi vores øjne er mest følsomme over for den. Luminansen vælger et tegn på skalaen: et mørkt område får et tæt tegn som @ eller █, et lyst område får et let tegn som . eller et mellemrum. Med Inverter vendes forholdet om, fordi lyse områder på en sort baggrund skal tegnes med de tætteste tegn. Gennemsigtige pixels regnes som papir: hvidt normalt, sort når kunsten er inverteret.

Valg af tegnsæt

  • Standard ( .:-=+*#%@) er den klassiske skala med ti trin: letlæselig og virker i alle skrifttyper.
  • Detaljeret (70 tegn) giver de blødeste overgange og er bedst til portrætter ved stor bredde.
  • Blokke ( ░▒▓█) bruger Unicodes skyggetegn til et massivt, pixelagtigt udtryk.
  • Enkel og Prikker giver en grafisk, minimalistisk stil.
  • To tegn ( #) giver en ren silhuet, god til logoer.
  • Eget accepterer alle tegn, også bogstaver med accenter og emojis: hvert tegn, som brugeren opfatter, selv en emoji i flere dele, bevares helt. Begynd med et mellemrum, så hvide områder forbliver tomme.

Tips til et godt resultat

Billeder med høj kontrast, et tydeligt motiv og en ensfarvet baggrund virker bedst. Beskær tæt på motivet først, og øg kontrasten, hvis fotoet er fladt. Ansigter kræver mindst 80 til 120 tegn for at kunne genkendes. Når du indsætter teksten et andet sted, skal du bruge en skrifttype med fast bredde (som Courier, Consolas eller Menlo) og ingen automatisk linjeombrydning, ellers flugter kolonnerne ikke. I mails og chatapps bør du sætte den i en kodeblok.

.html-filen indeholder kunsten i en <pre>-blok med en skrifttype med fast bredde; når farve er slået til, er hver række af tegn i samme farve et <span> med sin farve, så den vises overalt uden scripts.

Ofte stillede spørgsmål

Hvorfor ser min ASCII-kunst strakt eller trykket sammen ud?

Skrifttypen eller linjeafstanden hos den, der ser den, afviger fra eksemplet. Brug en skrifttype med fast bredde og en linjehøjde tæt på 1,15. Ændring af bredden forvrænger ikke kunsten, fordi rækkerne beregnes ud fra den.

Kan jeg bruge emojis som tegn?

Ja. Vælg Eget, og skriv emojis ordnet fra lyseste til mørkeste, for eksempel ⬜🟨🟧🟥⬛. Emojis er bredere end bogstaver i de fleste skrifttyper, så formindsk bredden.

Hvorfor findes den farvede version kun som HTML?

Almindelige tekstfiler kan ikke gemme farver. Downloaden som .txt og Kopiér tekst indeholder altid tegnene uden farve.

Bliver mit foto uploadet?

Nej. Billedet afkodes og konverteres i din browser; intet sendes nogen steder hen.

Hvilken bredde skal jeg vælge til en terminal?

En standardterminal er 80 tegn bred; brug 80 eller færre, så linjerne ikke bryder.