Générateur d'art ASCII (image vers texte)
Transformez n'importe quelle photo en art ASCII — largeur et densité de caractères ajustables, sortie texte monochrome à copier ou télécharger.
1 151 vues
Comment ça fonctionne
Le générateur dessine votre image sur un canvas, puis la divise en une grille de cellules d'échantillonnage et calcule la luminosité moyenne (luminance) de chacune. Cette valeur de luminosité est associée à une échelle de densité de caractères prédéfinie — quelque chose comme @%#*+=-:. — allant des caractères visuellement denses et sombres (@) jusqu'aux caractères clairsemés et clairs (un point ou un simple espace). Une cellule presque noire devient @, une cellule presque blanche devient un espace, et tout ce qui se trouve entre les deux se place quelque part sur l'échelle proportionnellement à sa luminosité mesurée. La couleur est écartée à cette étape — seule la luminance, pas la teinte, détermine le caractère choisi.
Il y a une subtilité : les caractères à chasse fixe sont des rectangles hauts, pas des carrés, donc associer un pixel à un caractère étirerait le résultat verticalement par rapport à la photo source. L'outil corrige ce décalage de rapport d'aspect en échantillonnant environ deux fois plus de lignes que de colonnes — un caractère par pixel en largeur, un caractère pour deux pixels en hauteur — ce qui garde les proportions de l'art ASCII final proches de l'image d'origine au lieu de paraître artificiellement haute et étroite.
À titre d'exemple concret, une photo échantillonnée pour une largeur de sortie de 100 caractères produit environ 100 colonnes sur 60 à 70 lignes une fois la correction verticale de 2:1 appliquée — assez petit pour être collé directement dans un fichier texte brut, un e-mail ou un terminal, tout en restant reconnaissable, car l'association de densité de caractères préserve le motif clair-obscur global de l'original même si toute trace de couleur a disparu.
Bon à savoir
Tout se passe côté client : la photo est dessinée sur un élément <canvas> en mémoire et relue pixel par pixel en JavaScript, donc rien n'est jamais transmis à un serveur. Vous pouvez ajuster la largeur de sortie pour échanger du détail contre de la taille — une largeur étroite produit un résultat compact et plus abstrait, tandis qu'une largeur importante préserve un détail plus fin au prix d'un bloc de texte bien plus grand — et inverser l'échelle de densité selon que le résultat sera affiché sur un fond sombre (un terminal) ou un fond clair (une page imprimée ou un document blanc).
Questions fréquentes
Pourquoi le résultat semble-t-il étiré ou écrasé ?
Les caractères à chasse fixe sont plus hauts que larges, donc l'outil compense en échantillonnant environ deux fois plus de lignes qu'une simple grille de pixels n'en aurait besoin — cela garde les proportions proches de l'image d'origine. Sans cette correction, une photo carrée ressortirait nettement haute et étroite une fois rendue dans une police à chasse fixe.
Comment l'outil décide-t-il quel caractère utiliser pour chaque partie de l'image ?
Il fait la moyenne de la luminosité de chaque cellule échantillonnée et associe cette valeur à une échelle fixe de caractères classés du plus dense visuellement (comme @ ou #) au plus clairsemé (comme . ou un espace) — les zones sombres reçoivent des caractères d'aspect plus dense, les zones claires des caractères plus clairsemés. Seule la luminance sert à cette association ; la couleur d'origine de chaque zone n'influence pas le choix du caractère.
Dois-je inverser l'échelle de caractères ?
Si vous affichez le résultat sur un fond sombre (comme un terminal), gardez le réglage par défaut. Si vous le collez sur un fond clair (comme un document blanc), inversez-le pour que les zones sombres restent visuellement "plus lourdes" — sinon la relation tonale s'inverse et l'image peut ressembler à un négatif photographique de l'originale.
Cela envoie-t-il ma photo quelque part ?
Non — l'image ne quitte jamais votre navigateur. Elle est dessinée sur un élément canvas local et échantillonnée entièrement côté client, de la même façon que tout autre outil de retouche d'image dans le navigateur fonctionne sans aller-retour vers un serveur.
Pourquoi une largeur de sortie plus grande produit-elle un résultat plus détaillé ?
La largeur détermine en combien de cellules d'échantillonnage l'image est divisée — plus de cellules signifie que chacune couvre une portion plus petite de la photo d'origine, donc la luminosité est mesurée avec une granularité plus fine et les petits détails (un œil, le bord d'une feuille, une texture fine) survivent à la conversion au lieu d'être moyennés en un seul caractère plat.
Outils similaires
Signaler un problème
Générateur d'art ASCII (image vers texte)
Commentaires
Pas encore de commentaires — soyez le premier à en écrire un !