ASCII 艺术字生成器

用 12 种 FIGlet 字体把英文和数字转成 ASCII 艺术字,输出与 figlet 命令逐字一致。可调字距和宽度,复制为注释或 Markdown 代码块,下载 TXT、PNG。

  • 在浏览器中处理
  • 数据不离开你的设备
  • 免费 · 无需注册
最多输入 2000 个字符,每个换行另起一段艺术字。修改文字后会稍作等待并自动生成。字体缺少的字符会列在输出下方。
可选 12 种 FIGlet 字体。「预览全部 12 种字体」用同一文字和设置展示各字体,点「使用」可选中。所需字体文件从本站加载,文字留在浏览器内。不支持上传字体。
复制与下载 「复制」使用当前「复制为」格式。TXT 保存纯文本并在末尾加换行。PNG 使用预览的文字颜色和背景色绘制,单边不超过 16384 像素、总面积不超过 16777216 像素。图片过大时请选择宽度限制或缩短文字。
更多选项
「字体默认」遵循字体本身的字距规则。全宽(-W)、紧贴(-k)、合并(-S)、重叠(-o)改变相邻字母的排列方式。修改后自动更新结果。
「不限」将每行文字排成一条横幅。限制宽度时,放不下的单词移到下一段,过长的单词会在字母之间断开。80 列与 figlet 默认宽度一致,每行最多输出 79 个字符。
「复制为」仅改变复制内容,可选纯文本、Markdown 代码块、# 注释、// 注释或 Shell heredoc。预览、TXT 和 PNG 下载使用纯文本。
裁剪会去掉每行末尾的空格与首尾空行,作用于预览、复制内容和两种下载。取消后保留字体的空行和空格。
FIGlet 命令
输出
  
示例、说明与常见问题 带实际输出的示例、与同类工具的差别,以及常见问题。

示例

Spring Boot 启动横幅

Spring Boot 会在启动时打印 classpath 里的 banner.txt,也可以用 spring.banner.location 指定文件;文件里还能用 ${spring-boot.formatted-version} 等占位符(见 Spring Boot 文档)。把服务名 order-api 用 Slant 生成,保存为 src/main/resources/banner.txt:

                  __                            _
  ____  _________/ /__  _____      ____ _____  (_)
 / __ \/ ___/ __  / _ \/ ___/_____/ __ `/ __ \/ /
/ /_/ / /  / /_/ /  __/ /  /_____/ /_/ / /_/ / /
\____/_/   \__,_/\___/_/         \__,_/ .___/_/
                                     /_/

文件不是 UTF-8 编码时,用 spring.banner.charset 指定编码。

生产服务器登录提示

登录成功后,系统会显示 /etc/motd 的内容(motd(5))。在生产机上放一个醒目的 PROD,能减少把命令敲错机器的情况。用 Big 生成后下载 .txt,复制到 /etc/motd:

 _____  _____   ____  _____
|  __ \|  __ \ / __ \|  __ \
| |__) | |__) | |  | | |  | |
|  ___/|  _  /| |  | | |  | |
| |    | | \ \| |__| | |__| |
|_|    |_|  \_\\____/|_____/

中文会被跳过

输入 你好 OK,Standard 字体只画出 OK,输出下方提示「已跳过:Standard 字体里没有这些字符:你 好」:

   ___  _  __
  / _ \| |/ /
 | | | | ' /
 | |_| | . \
  \___/|_|\_\

开头多出的空白来自 你好 后面的空格。

与 figlet 命令逐字一致

排版代码移植自 figlet 2.2.5。测试用同一批字体文件跑 figlet 2.2.5,覆盖 12 种字体、5 种字距、多行、5 种宽度下的换行,以及字体里没有的字符,共 840 组,逐字相同。

此前本页用的是 figlet.js 1.11。同样输入 Hello World,12 种字体中有 8 种与 figlet 不同:Standard、Big、Banner、Block、Script、Small 每行前多一列空格;Mini 和 Shadow 的字体文件要求字母重叠,figlet.js 没有照做,Mini 宽 37 列,figlet 只有 26 列。

展开「FIGlet 命令」,可复制能复现同样结果的命令。Banner、Big、Block、Lean、Mini、Script、Slant、Small、Standard 与 figlet 2.2.5 自带的字体逐字形一致;Doom 和 3D-ASCII 不在 figlet 自带字体里;本站的 Shadow 是 2007 年加宽空格的修订版。用到这三种字体,或在 Standard 里输入 ಠ 时,命令改用本站的 .flf 文件,旁边有下载链接。

字距选项

FIGfont 规范允许每种字体指定默认排法,以及最多 6 条「合并」规则,例如两个相同字符合成一个、/ 遇到 \ 合成 |。

选项figlet 参数效果
字体默认无按字体作者设定
全宽(-W)-W每个字母保留完整宽度,包括空白列
紧贴(-k)-k字母靠拢到相接为止,不重叠
合并(-S)-S按字体规则重叠一列,默认是紧贴的字体也照样合并
重叠(-o)-o不论相遇的是什么字符,都重叠一列

各字体的宽度

本工具实测,开启「去掉行尾空格和首尾空行」:

字体Hello World 行数Hello World 列数宽度 80 时每行能放 ABC…Z 的字母数
Mini22626
Small44316
Doom65012
Standard55213
Big65411
Slant55712
Block5907
3D-ASCII71177

Standard、Big、Block、Lean、Mini、Script、Shadow、Slant、Small 还能画 é、ñ、Å 等 Latin-1 字母,Standard 另有 ł、š、ő 等东欧字母。

粘贴时注意

  • README、博客等 Markdown 文档:选「Markdown 代码块」。不放进代码块时,Markdown 会合并连续空格,行尾两个空格还会变成强制换行。
  • 代码注释:选 # 或 // 注释,并保持「去掉行尾空格」勾选。遵循 EditorConfig trim_trailing_whitespace 的编辑器会删掉行尾空格,pycodestyle 也会报 W291。
  • Shell 脚本:选 heredoc 格式。分隔符带引号,shell 不会展开艺术字里的 $、` 和 \(POSIX here-document)。
  • JSON 或 JavaScript 字符串:先把 \ 和换行转义,可以用字符串转义工具。

与其他在线工具的对比

2026-10-01 用 Hello World 和 Hi 中文 实测:

  • 在线工具大全 lddgo:「字符宽度」默认为 Full,字母之间不合并;Hi 中文 只输出 Hi,没有提示。
  • TAAG:基于 figlet.js,Standard 首列多一列空格,Mini 宽 37 列,中文同样被静默丢掉;字体数量远多于本工具,可以存成图片。
  • asciiart.eu:Standard 与 figlet 一致,Mini 不重叠(37 列);文字里有任何中文时整段输出为空。

本工具与 figlet 命令逐字一致,列出被跳过的字,并给出复现用的命令。想在聊天或昵称里用不换行的花体英文,可以用花体字生成器;想看 README 里的效果,可以贴进 Markdown 预览。

限制

  • 只有 12 种字体,不能上传字体。
  • 只支持拉丁字母等少数文字。字体里没有的字不画,并列在输出下方;Tab 按 figlet 的规则变成空格,其他控制字符被丢弃,也会列出。
  • 最多 2000 个字符,超出时显示提示,不生成。
  • 每行文字一段艺术字。figlet 2.2.5 不做纵向合并,多行原样上下排列。
  • PNG 尺寸:每边不超过 16,384 像素、总面积不超过 16,777,216 像素(iOS Safari 的画布上限),更宽时会提示,请设置宽度。
  • 只有等宽字体才能对齐。

FAQ

能把中文生成 ASCII 艺术字吗?

不能。12 种字体都没有汉字、平假名和谚文,输入里的中文会被跳过,输出下方会列出被跳过的字。Banner 字体有不带浊音符号的片假名,Big 有希腊字母,Banner 有西里尔字母。

生成的横幅怎么放进 Spring Boot?

把输出保存为 src/main/resources/banner.txt,应用启动时就会打印它。文件里还可以加 ${spring-boot.formatted-version} 这样的占位符,显示 Spring Boot 版本。

为什么和 TAAG 生成的结果差一列空格?

TAAG 用 figlet.js,Standard 等 6 种字体每行前面会多一列空格,Mini 和 Shadow 也不按字体要求重叠。本工具按 figlet 2.2.5 的算法排字,结果与在终端里运行 figlet 命令相同,「FIGlet 命令」一栏会给出对应命令。Doom、3D-ASCII、Shadow 以及含 ಠ 的 Standard,figlet 2.2.5 自带的字体文件不同,命令改用本站的字体文件。

宽度选 80 列是什么意思?

默认是「不限」,一行文字排成一条横幅。选 80 列时和 figlet 命令的默认值一样:每行最多 79 个字符,放不下的单词移到下一段;单个单词比一行还长时,在字母之间断开。

输入的文字会上传吗?

不会。文字在浏览器里排版,也不会被保存;工具只从本站下载你选中的字体文件。页面统计只记录工具名和操作(确认修改时记「生成」,以及复制、下载),不含文字内容。