生成器

ASCII 字符画生成器

在浏览器里把文字或图片转成 ASCII 字符画。输入一个词或一行短句,选好字符梯度,工具会先把它画到画布上,再按明暗采样成等宽字符,所以中文、英文、日文甚至 emoji 都走同一套流程,不受固定字体限制。上传照片或 Logo 时,同一套引擎会把像素亮度从密到疏映射成字符。你可以设定输出列宽、切换字符集、为深色背景反色,并为图片调节对比度或开启彩色以保留每个像素的颜色,然后复制结果、下载纯文本文件,或导出保留颜色的 PNG。所有处理都在本地完成,输入的文字和上传的图片都不会离开浏览器。

  • 中文、英文、日文都能转成字符画,因为文字是画到画布上采样,而不是查固定字体
  • 把照片、Logo 和图标按像素亮度映射到字符梯度,转成字符画
  • 可设定输出列宽、六种字符集、文字的字体与粗细,并为深色背景反色
  • 对比度控制让图片在窄列宽下也能保留清晰的轮廓,彩色模式还能为图片保留每个像素的颜色
  • 可复制字符画、下载 .txt,或导出保留颜色的 PNG,全程本地生成,不上传任何内容
工具/ASCII 字符画生成器
宽度(列数)100
字符大小8px
-
尺寸
-
行数
-
字符数
-
输入文字或上传图片,即可看到字符画
输出

功能简介

把文字和图片两种输入放进同一块面板,全部经画布渲染,所以同一套亮度到字符的映射既能处理标题,也能处理 Logo 或照片,不用切换工具,也不依赖固定的字母字体。

  1. 01

    任意语言文字

    文字先画到画布再采样,所以中文、英文、日文和 emoji 都按同一方式转换,不会被内置的字母字体限制住。

  2. 02

    图片转字符

    照片、Logo 或图标会被逐像素读取,亮度从密到疏映射到字符梯度,即便是纯文本也能看出原本的形状。

  3. 03

    六种字符集

    在标准梯度、细腻长梯度、柔和块阴影、简洁集、二进制数字和极简两字符之间切换,改变字符画的质感。

  4. 04

    宽度与比例校正

    按列数设定输出宽度,工具会据此推算行数,并修正字符比字符画更高的比例问题,避免成像被拉长。

  5. 05

    字体、粗细与反色

    文字模式下可选无衬线、衬线或等宽字体,并切换加粗以加重笔画;随时反色,让字符画落在深色背景上。

  6. 06

    本地复制或下载

    把结果复制到剪贴板,或下载成纯文本文件。全部在浏览器里完成,输入内容不会离开页面。

如何使用

在同一块面板里,从一个词或一张图片得到可直接粘贴的字符画,无论是给 readme 做横幅,还是给照片画一张草图。

  1. 01

    选择文字或图片模式,然后输入一行短句,或上传 Logo、图标、照片这类图片。

  2. 02

    按列数设定输出宽度,决定结果有多细、多宽。

  3. 03

    挑选字符集,从柔和的块阴影到层次丰富的细腻梯度,改变整体质感。

  4. 04

    文字模式选好字体并按需加粗;图片模式调节对比度,让形状在窄列宽下仍然清楚。

  5. 05

    若字符画要放在深色背景上就开反色,然后复制结果或下载成文本文件。

功能说明

ASCII 字符画是纯文本,终端、代码注释、聊天框能去的地方它都能去,所以这个工具保持轻量、不挑语言,也方便针对粘贴目标做微调。

  • 基于画布渲染文字,支持各种语言和 emoji,而不只是固定的一套拉丁字母
  • 图片转换把亮度映射到字符,让照片和 Logo 也能变成看得懂的字符画
  • 六种字符集在密度和细节之间取舍,从柔和块阴影到层次丰富的长梯度
  • 用列数设定分辨率,行数据此推算,让画面比例保持自然
  • 对比度控制能在窄列宽下把图片形状从灰平的中间调里提出来
  • 彩色模式让每个字符保留源像素的颜色,并提供 PNG 导出来保存上色后的结果
  • 反色会交换明暗映射,让字符画在浅色或深色背景上都读得清
  • 文字的字体与加粗选项会改变渲染字形的笔画粗细和形状
  • 输出是等宽文本,能干净地粘进 readme、终端、注释和聊天
  • 重置会把所有控件恢复默认,方便从已知状态重新开始一幅
  • 所有渲染都在浏览器本地进行,文字和图片不会上传到任何地方

适合哪些场景

哪里只能用纯文本,字符画就出现在哪里,从项目横幅,到那些放不下真实图片、只能用文字示意的场合。

  1. Readme 与仓库横幅

    把项目名做成字符画,readme 或命令行启动画面会更完整,也不必在代码旁边再附一张图片文件。

  2. 终端与 CLI 输出

    在启动信息、帮助页或登录欢迎语里放一段横幅或 Logo,能让命令行工具在纯文本里有一点个性。

  3. 代码注释与分隔

    用字符画做大号段落标题,长文件更容易扫读,清楚标出一段代码到哪里结束、下一段从哪里开始。

  4. 聊天、论坛与邮件

    图片被屏蔽或显得不合适时,一小段字符画仍能把 Logo 或图形带进消息和签名里。

  5. 非拉丁文字画

    因为文字是画到画布上的,中文或日文短语同样能转成字符画,这是固定的拉丁字母字体做不到的。

  6. 照片与 Logo 草图

    把照片或 Logo 转成字符,能得到一张粗糙复古的渲染,适合终端主题、同人项目或纯文本文档。

  7. 教学与演示

    把同一份输入分别展示为文字和字符画,方便在讲图像基础或 Shell 脚本时说明亮度是怎么映射到字符的。

  8. 复古与创意项目

    字符画契合 demoscene 致敬、BBS 风格页面和有意走低保真路线的创意编程作品。

延伸阅读

当素材是图片时,先用 图片转 Base64 把它整理或内联好,再做转换。如果要先用占位文案铺满版面、再顺手转成横幅,可以搭配 Lorem Ipsum 假文生成器 一起用,整个流程都留在浏览器里。

使用建议

ASCII 字符画只有在宽度、字符集和对比度都对得上粘贴目标时才好看,几个习惯能让结果清楚而不糊成一团。

  • 文字尽量短。一个词或一行短句还读得清,长句会把每个字挤小,形状就散了。
  • 宽度要对准目标。readme 容得下较宽的作品,但终端或注释块通常需要更窄的列数。
  • 窄列宽用更密的梯度,空间充裕时再用细腻梯度,让质感配得上可用的篇幅。
  • 灰平或暗光照片要调高对比度,否则中间调偏重的图片会糊成一片灰,看不出主体。
  • 字符画要放在深色终端或页面上时就反色,让密集字符落在形状应当实心的位置。
  • 发布前先在真正的等宽环境里预览,因为比例字体会打乱每一行的对齐。
  • Logo 优先选高对比、剪影清晰的素材,缩到小字符网格后比细节繁多的图保留得好得多。
  • 把作品控制在读者无需横向滚动就能看到的宽度内,让整个形状一眼看全。

边界与注意事项

ASCII 字符画是用纯文本做的近似,所以输出取决于输入、宽度,以及它最终显示所用的字体。

  • 这个工具按亮度生成实心的块状字符画,而不是 figlet 那种固定字体拼出的装饰镂空大字母。
  • 照片里的细节在窄列宽下会丢失,因为每个字符代表的是一整块像素。
  • 只有在真正的等宽字体里才会对齐;比例字体会让每行错位,把画面破坏掉。
  • 纯文本和 .txt 下载是单色的,因为文本承载不了颜色。要保留每个像素的颜色,请开彩色模式并导出 PNG。
  • 过长的文字或过大的宽度会生成一大块字符,粘贴可能变慢,显示也可能不便。
  • emoji 和复杂文字按其绘制形状渲染,所以结果取决于浏览器里可用的系统字体。
  • 块阴影梯度用的是制表符画符号,并非严格的 ASCII,只允许纯 ASCII 的场合请改用标准或简洁梯度。

常见问题

关于把文字和图片转成 ASCII 字符画的常见问题,涵盖语言支持、图片输入、字符集,以及在哪些地方能正确显示。

能转中文、日文等非拉丁文字吗?

可以。文字先画到画布再采样成字符,所以浏览器能画出来的任何文字,包括中文、日文和 emoji,都能变成字符画。

图片转字符画是怎么实现的?

图片会被逐像素读取,每一块缩成一个亮度值,再映射到字符:暗的区域用密集字形,亮的区域用空格。

为什么字符画只在某些地方才对齐?

字符画依赖每个字符等宽。它在等宽字体里对齐,比如终端或代码块,但比例字体会让它错位变形。

宽度设置是做什么的?

宽度是每行的字符数。宽度越大保留的细节越多,但生成的块更宽;宽度越小越紧凑,质感也更粗。

什么时候该开反色?

字符画要放在深色背景上时开反色。它会交换亮度映射,让密集字符落在形状应当实心的位置。

我的文字或图片会被上传吗?

不会。所有渲染和转换都在浏览器本地完成,你输入的文字和选择的图片都不会离开设备。

该选哪种字符集?

多数情况用标准梯度即可。大宽度用细腻梯度,想要更平滑用块阴影,只允许纯 ASCII 时用简洁或极简梯度。

结果能保存吗?

可以。把字符画复制到剪贴板,或下载成纯文本文件,再粘进 readme、注释、终端横幅或消息里。

更多相关工具

ASCII 字符画是把输入变成可分享纯文本的一种方式。配合图片整理和占位文案,你可以从干净的素材一路做到横幅,全程不离开浏览器。