ascii-art

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

ASCII Art Skill

ASCII艺术工具集

Multiple tools for different ASCII art needs. All tools are local CLI programs or free REST APIs — no API keys required.
针对不同ASCII艺术需求的多款工具。所有工具均为本地CLI程序或免费REST API——无需API密钥。

Tool 1: Text Banners (pyfiglet — local)

工具1:文本横幅(pyfiglet — 本地)

Render text as large ASCII art banners. 571 built-in fonts.
将文本渲染为大型ASCII艺术横幅。内置571种字体。

Setup

安装

bash
pip install pyfiglet --break-system-packages -q
bash
pip install pyfiglet --break-system-packages -q

Usage

使用方法

bash
python3 -m pyfiglet "YOUR TEXT" -f slant
python3 -m pyfiglet "TEXT" -f doom -w 80    # Set width
python3 -m pyfiglet --list_fonts             # List all 571 fonts
bash
python3 -m pyfiglet "YOUR TEXT" -f slant
python3 -m pyfiglet "TEXT" -f doom -w 80    # 设置宽度
python3 -m pyfiglet --list_fonts             # 列出全部571种字体

Recommended fonts

推荐字体

StyleFontBest for
Clean & modern
slant
Project names, headers
Bold & blocky
doom
Titles, logos
Big & readable
big
Banners
Classic banner
banner3
Wide displays
Compact
small
Subtitles
Cyberpunk
cyberlarge
Tech themes
3D effect
3-d
Splash screens
Gothic
gothic
Dramatic text
风格字体适用场景
简洁现代
slant
项目名称、标题
粗体块状
doom
标题、标志
醒目易读
big
横幅
经典横幅
banner3
宽屏显示
紧凑小巧
small
副标题
赛博朋克风
cyberlarge
科技主题
3D效果
3-d
启动界面
哥特风格
gothic
戏剧性文本

Tips

小贴士

  • Preview 2-3 fonts and let the user pick their favorite
  • Short text (1-8 chars) works best with detailed fonts like
    doom
    or
    block
  • Long text works better with compact fonts like
    small
    or
    mini
  • 预览2-3种字体,让用户选择他们喜欢的
  • 短文本(1-8个字符)搭配
    doom
    block
    这类细节丰富的字体效果最佳
  • 长文本更适合
    small
    mini
    这类紧凑字体

Tool 2: Text Banners (asciified API — remote, no install)

工具2:文本横幅(asciified API — 远程,无需安装)

Free REST API that converts text to ASCII art. 250+ FIGlet fonts. Returns plain text directly — no parsing needed. Use this when pyfiglet is not installed or as a quick alternative.
免费REST API,可将文本转换为ASCII艺术。支持250+种FIGlet字体。直接返回纯文本——无需解析。当pyfiglet未安装时使用,或作为快速替代方案。

Usage (via terminal curl)

使用方法(通过终端curl)

bash
undefined
bash
undefined

Basic text banner (default font)

基础文本横幅(默认字体)

With a specific font

指定字体

List all available fonts (returns JSON array)

列出所有可用字体(返回JSON数组)

Tips

小贴士

  • URL-encode spaces as
    +
    in the text parameter
  • The response is plain text ASCII art — no JSON wrapping, ready to display
  • Font names are case-sensitive; use the fonts endpoint to get exact names
  • Works from any terminal with curl — no Python or pip needed
  • 文本参数中的空格需URL编码为
    +
  • 响应为纯文本ASCII艺术——无JSON包裹,可直接显示
  • 字体名称区分大小写;使用字体端点获取准确名称
  • 任何带有curl的终端均可使用——无需Python或pip

Tool 3: Cowsay (Message Art)

工具3:Cowsay(消息艺术)

Classic tool that wraps text in a speech bubble with an ASCII character.
经典工具,将文本包裹在ASCII角色的对话气泡中。

Setup

安装

bash
sudo apt install cowsay -y    # Debian/Ubuntu
bash
sudo apt install cowsay -y    # Debian/Ubuntu

brew install cowsay # macOS

brew install cowsay # macOS

undefined
undefined

Usage

使用方法

bash
cowsay "Hello World"
cowsay -f tux "Linux rules"       # Tux the penguin
cowsay -f dragon "Rawr!"          # Dragon
cowsay -f stegosaurus "Roar!"     # Stegosaurus
cowthink "Hmm..."                  # Thought bubble
cowsay -l                          # List all characters
bash
cowsay "Hello World"
cowsay -f tux "Linux rules"       # 企鹅Tux
cowsay -f dragon "Rawr!"          # 龙
cowsay -f stegosaurus "Roar!"     # 剑龙
cowthink "Hmm..."                  # 思考气泡
cowsay -l                          # 列出所有角色

Available characters (50+)

可用角色(50+)

beavis.zen
,
bong
,
bunny
,
cheese
,
daemon
,
default
,
dragon
,
dragon-and-cow
,
elephant
,
eyes
,
flaming-skull
,
ghostbusters
,
hellokitty
,
kiss
,
kitty
,
koala
,
luke-koala
,
mech-and-cow
,
meow
,
moofasa
,
moose
,
ren
,
sheep
,
skeleton
,
small
,
stegosaurus
,
stimpy
,
supermilker
,
surgery
,
three-eyes
,
turkey
,
turtle
,
tux
,
udder
,
vader
,
vader-koala
,
www
beavis.zen
,
bong
,
bunny
,
cheese
,
daemon
,
default
,
dragon
,
dragon-and-cow
,
elephant
,
eyes
,
flaming-skull
,
ghostbusters
,
hellokitty
,
kiss
,
kitty
,
koala
,
luke-koala
,
mech-and-cow
,
meow
,
moofasa
,
moose
,
ren
,
sheep
,
skeleton
,
small
,
stegosaurus
,
stimpy
,
supermilker
,
surgery
,
three-eyes
,
turkey
,
turtle
,
tux
,
udder
,
vader
,
vader-koala
,
www

Eye/tongue modifiers

眼睛/舌头样式修改器

bash
cowsay -b "Borg"       # =_= eyes
cowsay -d "Dead"       # x_x eyes
cowsay -g "Greedy"     # $_$ eyes
cowsay -p "Paranoid"   # @_@ eyes
cowsay -s "Stoned"     # *_* eyes
cowsay -w "Wired"      # O_O eyes
cowsay -e "OO" "Msg"   # Custom eyes
cowsay -T "U " "Msg"   # Custom tongue
bash
cowsay -b "Borg"       # =_= 眼睛
cowsay -d "Dead"       # x_x 眼睛
cowsay -g "Greedy"     # $_$ 眼睛
cowsay -p "Paranoid"   # @_@ 眼睛
cowsay -s "Stoned"     # *_* 眼睛
cowsay -w "Wired"      # O_O 眼睛
cowsay -e "OO" "Msg"   # 自定义眼睛
cowsay -T "U " "Msg"   # 自定义舌头

Tool 4: Boxes (Decorative Borders)

工具4:Boxes(装饰边框)

Draw decorative ASCII art borders/frames around any text. 70+ built-in designs.
为任意文本绘制装饰性ASCII艺术边框/框架。内置70+种样式。

Setup

安装

bash
sudo apt install boxes -y    # Debian/Ubuntu
bash
sudo apt install boxes -y    # Debian/Ubuntu

brew install boxes # macOS

brew install boxes # macOS

undefined
undefined

Usage

使用方法

bash
echo "Hello World" | boxes                    # Default box
echo "Hello World" | boxes -d stone           # Stone border
echo "Hello World" | boxes -d parchment       # Parchment scroll
echo "Hello World" | boxes -d cat             # Cat border
echo "Hello World" | boxes -d dog             # Dog border
echo "Hello World" | boxes -d unicornsay      # Unicorn
echo "Hello World" | boxes -d diamonds        # Diamond pattern
echo "Hello World" | boxes -d c-cmt           # C-style comment
echo "Hello World" | boxes -d html-cmt        # HTML comment
echo "Hello World" | boxes -a c               # Center text
boxes -l                                       # List all 70+ designs
bash
echo "Hello World" | boxes                    # 默认边框
echo "Hello World" | boxes -d stone           # 石头纹理边框
echo "Hello World" | boxes -d parchment       # 羊皮纸卷轴边框
echo "Hello World" | boxes -d cat             # 猫形边框
echo "Hello World" | boxes -d dog             # 狗形边框
echo "Hello World" | boxes -d unicornsay      # 独角兽边框
echo "Hello World" | boxes -d diamonds        # 菱形图案边框
echo "Hello World" | boxes -d c-cmt           # C风格注释边框
echo "Hello World" | boxes -d html-cmt        # HTML注释边框
echo "Hello World" | boxes -a c               # 文本居中
boxes -l                                       # 列出全部70+种样式

Combine with pyfiglet or asciified

与pyfiglet或asciified结合使用

bash
python3 -m pyfiglet "HERMES" -f slant | boxes -d stone
bash
python3 -m pyfiglet "HERMES" -f slant | boxes -d stone

Or without pyfiglet installed:

或未安装pyfiglet时:

Tool 5: TOIlet (Colored Text Art)

工具5:TOIlet(彩色文本艺术)

Like pyfiglet but with ANSI color effects and visual filters. Great for terminal eye candy.
类似pyfiglet,但支持ANSI颜色效果和视觉滤镜。非常适合终端视觉美化。

Setup

安装

bash
sudo apt install toilet toilet-fonts -y    # Debian/Ubuntu
bash
sudo apt install toilet toilet-fonts -y    # Debian/Ubuntu

brew install toilet # macOS

brew install toilet # macOS

undefined
undefined

Usage

使用方法

bash
toilet "Hello World"                    # Basic text art
toilet -f bigmono12 "Hello"            # Specific font
toilet --gay "Rainbow!"                 # Rainbow coloring
toilet --metal "Metal!"                 # Metallic effect
toilet -F border "Bordered"             # Add border
toilet -F border --gay "Fancy!"         # Combined effects
toilet -f pagga "Block"                 # Block-style font (unique to toilet)
toilet -F list                          # List available filters
bash
toilet "Hello World"                    # 基础文本艺术
toilet -f bigmono12 "Hello"            # 指定字体
toilet --gay "Rainbow!"                 # 彩虹配色
toilet --metal "Metal!"                 # 金属效果
toilet -F border "Bordered"             # 添加边框
toilet -F border --gay "Fancy!"         # 组合效果
toilet -f pagga "Block"                 # 块状字体(toilet专属)
toilet -F list                          # 列出可用滤镜

Filters

滤镜

crop
,
gay
(rainbow),
metal
,
flip
,
flop
,
180
,
left
,
right
,
border
Note: toilet outputs ANSI escape codes for colors — works in terminals but may not render in all contexts (e.g., plain text files, some chat platforms).
crop
,
gay
(彩虹),
metal
,
flip
,
flop
,
180
,
left
,
right
,
border
注意:toilet输出带颜色的ANSI转义码——可在终端中正常显示,但在部分场景下可能无法渲染(如纯文本文件、部分聊天平台)。

Tool 6: Image to ASCII Art

工具6:图片转ASCII艺术

Convert images (PNG, JPEG, GIF, WEBP) to ASCII art.
将图片(PNG、JPEG、GIF、WEBP)转换为ASCII艺术。

Option A: ascii-image-converter (recommended, modern)

选项A:ascii-image-converter(推荐,现代化工具)

bash
undefined
bash
undefined

Install

安装

sudo snap install ascii-image-converter
sudo snap install ascii-image-converter

OR: go install github.com/TheZoraiz/ascii-image-converter@latest

或:go install github.com/TheZoraiz/ascii-image-converter@latest


```bash
ascii-image-converter image.png                  # Basic
ascii-image-converter image.png -C               # Color output
ascii-image-converter image.png -d 60,30         # Set dimensions
ascii-image-converter image.png -b               # Braille characters
ascii-image-converter image.png -n               # Negative/inverted
ascii-image-converter https://url/image.jpg      # Direct URL
ascii-image-converter image.png --save-txt out   # Save as text

```bash
ascii-image-converter image.png                  # 基础转换
ascii-image-converter image.png -C               # 彩色输出
ascii-image-converter image.png -d 60,30         # 设置尺寸
ascii-image-converter image.png -b               # 使用盲文字符
ascii-image-converter image.png -n               # 反色/反转效果
ascii-image-converter https://url/image.jpg      # 直接转换URL图片
ascii-image-converter image.png --save-txt out   # 保存为文本

Option B: jp2a (lightweight, JPEG only)

选项B:jp2a(轻量工具,仅支持JPEG)

bash
sudo apt install jp2a -y
jp2a --width=80 image.jpg
jp2a --colors image.jpg              # Colorized
bash
sudo apt install jp2a -y
jp2a --width=80 image.jpg
jp2a --colors image.jpg              # 彩色转换

Tool 7: Search Pre-Made ASCII Art

工具7:搜索预制ASCII艺术

Search curated ASCII art from the web. Use
terminal
with
curl
.
从网络搜索精选ASCII艺术。使用终端和
curl
即可操作。

Source A: ascii.co.uk (recommended for pre-made art)

来源A:ascii.co.uk(推荐获取预制艺术)

Large collection of classic ASCII art organized by subject. Art is inside HTML
<pre>
tags. Fetch the page with curl, then extract art with a small Python snippet.
URL pattern:
https://ascii.co.uk/art/{subject}
Step 1 — Fetch the page:
bash
curl -s 'https://ascii.co.uk/art/cat' -o /tmp/ascii_art.html
Step 2 — Extract art from pre tags:
python
import re, html
with open('/tmp/ascii_art.html') as f:
    text = f.read()
arts = re.findall(r'<pre[^>]*>(.*?)</pre>', text, re.DOTALL)
for art in arts:
    clean = re.sub(r'<[^>]+>', '', art)
    clean = html.unescape(clean).strip()
    if len(clean) > 30:
        print(clean)
        print('\n---\n')
Available subjects (use as URL path):
  • Animals:
    cat
    ,
    dog
    ,
    horse
    ,
    bird
    ,
    fish
    ,
    dragon
    ,
    snake
    ,
    rabbit
    ,
    elephant
    ,
    dolphin
    ,
    butterfly
    ,
    owl
    ,
    wolf
    ,
    bear
    ,
    penguin
    ,
    turtle
  • Objects:
    car
    ,
    ship
    ,
    airplane
    ,
    rocket
    ,
    guitar
    ,
    computer
    ,
    coffee
    ,
    beer
    ,
    cake
    ,
    house
    ,
    castle
    ,
    sword
    ,
    crown
    ,
    key
  • Nature:
    tree
    ,
    flower
    ,
    sun
    ,
    moon
    ,
    star
    ,
    mountain
    ,
    ocean
    ,
    rainbow
  • Characters:
    skull
    ,
    robot
    ,
    angel
    ,
    wizard
    ,
    pirate
    ,
    ninja
    ,
    alien
  • Holidays:
    christmas
    ,
    halloween
    ,
    valentine
Tips:
  • Preserve artist signatures/initials — important etiquette
  • Multiple art pieces per page — pick the best one for the user
  • Works reliably via curl, no JavaScript needed
大量经典ASCII艺术合集,按主题分类。艺术内容位于HTML
<pre>
标签内。使用curl获取页面,再通过小段Python代码提取艺术内容。
URL格式
https://ascii.co.uk/art/{subject}
步骤1 — 获取页面:
bash
curl -s 'https://ascii.co.uk/art/cat' -o /tmp/ascii_art.html
步骤2 — 从pre标签提取艺术内容:
python
import re, html
with open('/tmp/ascii_art.html') as f:
    text = f.read()
arts = re.findall(r'<pre[^>]*>(.*?)</pre>', text, re.DOTALL)
for art in arts:
    clean = re.sub(r'<[^>]+>', '', art)
    clean = html.unescape(clean).strip()
    if len(clean) > 30:
        print(clean)
        print('\n---\n')
可用主题(作为URL路径):
  • 动物:
    cat
    ,
    dog
    ,
    horse
    ,
    bird
    ,
    fish
    ,
    dragon
    ,
    snake
    ,
    rabbit
    ,
    elephant
    ,
    dolphin
    ,
    butterfly
    ,
    owl
    ,
    wolf
    ,
    bear
    ,
    penguin
    ,
    turtle
  • 物品:
    car
    ,
    ship
    ,
    airplane
    ,
    rocket
    ,
    guitar
    ,
    computer
    ,
    coffee
    ,
    beer
    ,
    cake
    ,
    house
    ,
    castle
    ,
    sword
    ,
    crown
    ,
    key
  • 自然:
    tree
    ,
    flower
    ,
    sun
    ,
    moon
    ,
    star
    ,
    mountain
    ,
    ocean
    ,
    rainbow
  • 角色:
    skull
    ,
    robot
    ,
    angel
    ,
    wizard
    ,
    pirate
    ,
    ninja
    ,
    alien
  • 节日:
    christmas
    ,
    halloween
    ,
    valentine
小贴士:
  • 保留艺术家签名/缩写——这是重要的礼仪
  • 每个页面包含多件艺术作品——为用户挑选最佳的
  • 通过curl可稳定使用,无需JavaScript

Source B: GitHub Octocat API (fun easter egg)

来源B:GitHub Octocat API(趣味彩蛋)

Returns a random GitHub Octocat with a wise quote. No auth needed.
bash
curl -s https://api.github.com/octocat
返回随机的GitHub Octocat图片及一句睿智语录。无需授权。
bash
curl -s https://api.github.com/octocat

Tool 8: Fun ASCII Utilities (via curl)

工具8:趣味ASCII工具(通过curl)

These free services return ASCII art directly — great for fun extras.
这些免费服务直接返回ASCII艺术——非常适合趣味附加内容。

QR Codes as ASCII Art

ASCII艺术格式的二维码

bash
curl -s "qrenco.de/Hello+World"
curl -s "qrenco.de/https://example.com"
bash
curl -s "qrenco.de/Hello+World"
curl -s "qrenco.de/https://example.com"

Weather as ASCII Art

ASCII艺术格式的天气

bash
curl -s "wttr.in/London"          # Full weather report with ASCII graphics
curl -s "wttr.in/Moon"            # Moon phase in ASCII art
curl -s "v2.wttr.in/London"       # Detailed version
bash
curl -s "wttr.in/London"          # 带ASCII图形的完整天气报告
curl -s "wttr.in/Moon"            # ASCII艺术格式的月相
curl -s "v2.wttr.in/London"       # 详细版本

Tool 9: LLM-Generated Custom Art (Fallback)

工具9:LLM生成自定义艺术(备选方案)

When tools above don't have what's needed, generate ASCII art directly using these Unicode characters:
当以上工具无法满足需求时,可使用以下Unicode字符直接生成ASCII艺术:

Character Palette

字符调色板

Box Drawing:
╔ ╗ ╚ ╝ ║ ═ ╠ ╣ ╦ ╩ ╬ ┌ ┐ └ ┘ │ ─ ├ ┤ ┬ ┴ ┼ ╭ ╮ ╰ ╯
Block Elements:
░ ▒ ▓ █ ▄ ▀ ▌ ▐ ▖ ▗ ▘ ▝ ▚ ▞
Geometric & Symbols:
◆ ◇ ◈ ● ○ ◉ ■ □ ▲ △ ▼ ▽ ★ ☆ ✦ ✧ ◀ ▶ ◁ ▷ ⬡ ⬢ ⌂
框线绘制:
╔ ╗ ╚ ╝ ║ ═ ╠ ╣ ╦ ╩ ╬ ┌ ┐ └ ┘ │ ─ ├ ┤ ┬ ┴ ┼ ╭ ╮ ╰ ╯
块元素:
░ ▒ ▓ █ ▄ ▀ ▌ ▐ ▖ ▗ ▘ ▝ ▚ ▞
几何与符号:
◆ ◇ ◈ ● ○ ◉ ■ □ ▲ △ ▼ ▽ ★ ☆ ✦ ✧ ◀ ▶ ◁ ▷ ⬡ ⬢ ⌂

Rules

规则

  • Max width: 60 characters per line (terminal-safe)
  • Max height: 15 lines for banners, 25 for scenes
  • Monospace only: output must render correctly in fixed-width fonts
  • 最大宽度:每行60个字符(终端兼容)
  • 最大高度:横幅15行,场景25行
  • 仅使用等宽字体:输出需在固定宽度字体中正确渲染

Decision Flow

决策流程

  1. Text as a banner → pyfiglet if installed, otherwise asciified API via curl
  2. Wrap a message in fun character art → cowsay
  3. Add decorative border/frame → boxes (can combine with pyfiglet/asciified)
  4. Art of a specific thing (cat, rocket, dragon) → ascii.co.uk via curl + parsing
  5. Convert an image to ASCII → ascii-image-converter or jp2a
  6. QR code → qrenco.de via curl
  7. Weather/moon art → wttr.in via curl
  8. Something custom/creative → LLM generation with Unicode palette
  9. Any tool not installed → install it, or fall back to next option
  1. 文本转横幅 → 若已安装pyfiglet则使用,否则通过curl调用asciified API
  2. 为消息添加趣味角色艺术包裹 → 使用cowsay
  3. 添加装饰性边框/框架 → 使用boxes(可与pyfiglet/asciified结合)
  4. 特定事物的艺术(猫、火箭、龙)→ 通过curl获取ascii.co.uk内容并解析
  5. 图片转ASCII → 使用ascii-image-converter或jp2a
  6. 二维码 → 通过curl调用qrenco.de
  7. 天气/月相艺术 → 通过curl调用wttr.in
  8. 自定义/创意内容 → 使用Unicode调色板通过LLM生成
  9. 工具未安装 → 安装该工具,或切换至下一个备选方案