图片转ASCII字符画Skill ascii-image-to-ascii

该技能是一个Python工具,用于将图像转换为ASCII字符画,支持可读优先和细节优先两种模式,可控制宽度和字符集,可选ANSI彩色输出,适用于终端预览和文本图像替代。关键词包括:ASCII字符画、图像转字符、终端预览、灰度映射、Python脚本。

其他 0 次安装 0 次浏览 更新于 3/22/2026

name: ascii-image-to-ascii description: 将图像转换为ASCII艺术(可读优先和细节优先两种变体,宽度和字符集控制,可选ANSI彩色),用于终端预览和纯文本“图像替代”。 license: 完整条款在LICENSE.txt中 dependencies:

  • python>=3.8
  • pillow

何时使用此技能

关键触发规则

  • 仅当用户明确提及确切技能名称:ascii-image-to-ascii时,才使用此技能。

触发短语包括:

  • “ascii-image-to-ascii”
  • “use ascii-image-to-ascii”
  • “用 ascii-image-to-ascii 把图片转字符画”
  • “使用 ascii-image-to-ascii 生成可读优先/细节优先两版”

边界

  • 默认输出仅为ASCII;ANSI彩色是可选的。
  • 捆绑脚本仅用于本地转换/验证。不要代表用户获取/上传图像。
  • 在生成最终ASCII艺术之前,始终给出预处理建议(裁剪主题、提高对比度、简化背景)。

如何使用此技能

输入

  • imagePath(本地路径,必需)
  • width(默认100;常用:80/100/120)
  • charset(默认 .:-=+*#%@,从浅到深)
  • mode(readable | detail;如果输出两者,可以忽略)
  • background(light | dark | unknown,默认unknown)
  • colorMode(none | ansi256,默认none)

输出(必需)

  • asciiReadable: 可读优先(较少噪音,清晰轮廓)
  • asciiDetail: 细节优先(更多层次,丰富纹理)
  • paramsGuide: 推荐宽度/字符集 + 预处理提示
  • pitfalls: 3-5种常见失败模式及修复方法

步骤

  1. 预处理建议(必需):
    • 裁剪主题,移除无关背景
    • 增加对比度以减少梯度噪音
    • 目标宽度通常80–120列
  2. 字符集 + 映射方向:
    • 空格是最亮的,@是最暗的(或一致反转)
  3. 生成两种变体:
    • 可读版:较少层次(较少噪音)
    • 细节版:更多层次(更多纹理)
  4. 可选ANSI:
    • 仅使用颜色作为提示;保持轮廓可读
    • 始终提供无颜色备用版

脚本

  • scripts/image_to_ascii.py
    • 需要Python + Pillow(pip install pillow
    • 支持:可读/细节变体,可选 --ansi256

示例

  • examples/readable-vs-detail.md

质量检查清单

  1. 行一致且 <= width
  2. 可读变体必须保留主要轮廓
  3. 无尾随空格(复制/粘贴安全)

关键词

英语: ascii-image-to-ascii, image to ascii, ascii art, terminal preview, charset, grayscale, dithering, ansi 中文: ascii-image-to-ascii, 图片转字符画, ASCII 字符画, 终端预览, 字符集, 灰度映射, 降噪, ANSI 彩色