[闲聊] asciiart转图

楼主: poewar (☺☻)   2023-04-12 18:33:33
概念跟运作算简单
网络上也不少转换的工具
不过大部分是半角的ascii符号
全角符号就比较少了,这边来测试一下
全角符号的宽度是个小问题
一个像素一个符号的话,全角就比半角多了一倍的宽度
不过这也可以简单解决
就把一个全角字视为4个像素点就好了
也就是说全角字是正方形的
裁切成四块分别计算灰阶
至于为什么分四个计算,很明显就是全角字的四个位置的灰阶不是均匀的
每个符号计算完之后
接着开始汇入图片,图片也经过处理转换成灰阶
然后一次取正方形四个像素点,去跟已预先计算完符号的四个位置一一比较
基本上就是计算变异数,取最小的那个符号配置上去
重复步骤直到结束
转一张有名的Lenna
https://i.imgur.com/6l8TNck.png
随便转一张绘图
https://i.imgur.com/5OEqJs6.png
转一张蒙娜丽莎
https://i.imgur.com/Rw78OaI.png
大的图分辨率为200*200像素 (转完总共100个全角符号*100行)
小的图分辨率为80*80像素 (转完总共40个全角符号*40行)
这边的符号不限于中文
这边把ushort 10000~40000间,新细明体可显示的符号都使用
当然如果要一个像素点用一个符号也不是不行
这边只是想说节省一点空间看看
转出来的图也还可以辨识,确实是可行的
不过最主要的问题还是需要缩小一点看才能看
正常大小看还是不容易看出图形
╮(′~‵〞)╭

Links booklink

Contact Us: admin [ a t ] ucptt.com