Text to ASCII Art Generator
Turn text into FIGlet ASCII art with 12 fonts. Output matches the figlet command line; set spacing and width, copy as code comments, download TXT or PNG.
- Runs in your browser
- Your data never leaves your browser
- Free · No Sign-Up
Scan with WeChat to share this tool
Examples, details and FAQ Worked examples, how it compares with other tools, and answers to common questions.
Examples
Deploy in Standard. The first column is the left edge of the D, as in the figlet command:
____ _
| _ \ ___ _ __ | | ___ _ _
| | | |/ _ \ '_ \| |/ _ \| | | |
| |_| | __/ |_) | | (_) | |_| |
|____/ \___| .__/|_|\___/ \__, |
|_| |___/
Hello World in Mini. The font header asks for overlapping, so the letters share columns and the banner is 26 columns wide:
|_| _ || _ \ /_ ._| _|
| |(/_||(_) \/\/(_)| |(_|
build passed in Small with Width set to 40. The second word does not fit, so it moves to a new block, as figlet -f small -w 40 does:
_ _ _ _
| |__ _ _(_) |__| |
| '_ \ || | | / _` |
|_.__/\_,_|_|_\__,_|
_
_ __ __ _ ______ ___ __| |
| '_ \/ _` (_-<_-</ -_) _` |
| .__/\__,_/__/__/\___\__,_|
|_|
Same output as the figlet command
The renderer is a port of figlet 2.2.5, the last release of the original program. Its test compares 840 renders against figlet 2.2.5 run with the same font files: every font, every spacing option, line breaks, word wrap at five widths, and characters the fonts lack. All 840 match character for character.
The previous version of this page used figlet.js 1.11, which gives different output for 8 of the 12 fonts on Hello World. Standard, Big, Banner, Block, Script and Small get an extra blank first column. Mini and Shadow are not overlapped, although their font files ask for it: Mini comes out 37 columns wide instead of 26.
The command in the FIGlet command section reproduces the art. Banner, Big, Block, Lean, Mini, Script, Slant, Small and Standard are glyph-for-glyph the same as the fonts in the figlet 2.2.5 package. Doom and 3D-ASCII are not in that package. Shadow here is a 2007 revision with a wider space. For these three, and for Standard text that contains ಠ, the command loads the .flf file from this site, with a download link next to it.
Spacing options
The FIGfont specification lets each font name a default layout and up to six “smushing” rules, such as “two equal characters become one” or “/ and \ become |”.
| Option | figlet flag | What it does |
|---|---|---|
| Font default | none | The layout the font author chose |
| Full width (-W) | -W | Each letter keeps its full width, blank columns included |
| Fitted (-k) | -k | Letters move together until they touch; nothing overlaps |
| Smushed (-S) | -S | Overlaps by one column using the font’s rules, even in fonts whose default is fitted |
| Overlapped (-o) | -o | Overlaps by one column regardless of which characters meet |
Fonts and widths
Measured with this tool, Trim on:
| Font | Lines for Hello World | Columns for Hello World | Letters of ABC…Z per line at width 80 |
|---|---|---|---|
| Mini | 2 | 26 | 26 |
| Small | 4 | 43 | 16 |
| Doom | 6 | 50 | 12 |
| Standard | 5 | 52 | 13 |
| Shadow | 4 | 53 | 13 |
| Big | 6 | 54 | 11 |
| Slant | 5 | 57 | 12 |
| Script | 5 | 58 | 12 |
| Banner | 7 | 74 | 10 |
| Block | 5 | 90 | 7 |
| Lean | 5 | 94 | 7 |
| 3D-ASCII | 7 | 117 | 7 |
Standard, Big, Block, Lean, Mini, Script, Shadow, Slant and Small also draw Latin-1 letters such as é, ñ and Å; Standard covers Latin Extended-A (ł, š, ő) too.
Where to paste it
- README and Markdown: use Copy as → Markdown code block. Outside a code block, Markdown collapses spaces, and two spaces at the end of a line become a hard line break.
- Source code: use the
#or//format. Keep Trim on: editors that follow EditorConfigtrim_trailing_whitespaceand linters such as pycodestyle (W291) flag or remove spaces at the end of a line. - Shell scripts and
~/.bashrc: the heredoc format quotes the delimiter, so the shell does not expand$,`or\inside the art (POSIX here-documents). - Login banner: the text of
/etc/motdis printed after a successful login (motd(5)). Download the.txtfile and copy it there. - JSON or a JavaScript string: escape every
\and line break first, for example with the String Escape tool.
Compared with other generators
Checked on 2026-10-01 with Hello World and Hi 中文:
- TAAG runs on figlet.js, which was written for it. Standard gets the extra blank first column, Mini is 37 columns wide, and the CJK characters disappear without a message. It offers far more fonts than this tool and a Save as image button.
- asciiart.eu gives the figlet result for Standard, but Mini is not overlapped (37 columns). With any CJK character in the text, the output is empty. Its width defaults to 80, so
Hello Worldin Block wraps. - This tool matches the figlet command, lists skipped characters by name, and gives you the command to rebuild the art.
For styled letters that stay on one line in a chat or a profile, try the Fancy Text Generator. To check how the art looks in a README, paste the Markdown into Markdown Preview.
Limits
- 12 fonts. There is no font upload.
- Latin script only. Characters the font lacks draw nothing and are listed under the output. figlet turns a tab into a space and drops other control characters; these are listed too.
- 2,000 characters. Longer text shows a message instead of output.
- One block per line of text. figlet 2.2.5 has no vertical smushing, so lines are stacked as they are.
- PNG size. The image stays within 16,384 pixels per side and 16,777,216 pixels in total, the canvas limit of iOS Safari. Wider art shows a message; set a width.
- The art lines up only in a monospaced font.
FAQ
Can I make ASCII art from Chinese, Japanese or Korean text?
No. None of the 12 fonts has CJK ideographs, hiragana or Hangul, and the tool lists every character it skipped under the output. Banner has katakana without voiced marks, Big has Greek and Banner has Cyrillic.
Why is there an empty line under some banners?
Fonts reserve rows for descenders such as g and y. Text without them leaves those rows blank. Keep Trim on to remove blank lines at the top and bottom and the spaces at the end of each line.
Will the art look the same if I run figlet myself?
Yes. The tool is a port of the figlet 2.2.5 renderer and shows the matching command in the FIGlet command section. For Doom, 3D-ASCII and Shadow, and for Standard with the ಠ character, the command uses the font file from this site, because figlet 2.2.5 does not ship those files in the same form. Sites built on figlet.js, such as TAAG, add a blank first column in Standard and five other fonts, so their output can be one column off.
Why does my text turn into one very wide line?
Width is set to No limit by default, so a long text becomes one long banner. Choose 80 columns to get the figlet default: each output line has at most 79 characters, words move to the next block, and a word longer than the line is split between letters.
Is my text sent anywhere?
No. The text is rendered in your browser and is not saved; the tool only downloads the font file you select from this site. The page's analytics record the tool name and the action (generate when you commit a change, copy, download), not the text.