批处理之家's Archiver

523066680 发表于 2009-1-28 13:00

批处理滚动画面

群里聊天的时候有人(好像是yode)介绍了一个网站
[url=http://www.u148.net/game/photo2text.html]http://www.u148.net/game/photo2text.html[/url]
可以把图片转换为字符串,拿了个最终幻想的图转了 还真不错。
就是比较大,发上来也见不着效果(转行)

打算用批处理滚动显示,简单地针对了那张图做了一下,发上来娱乐娱乐[code]@echo off &setlocal enabledelayedexpansion
color f0
set n=0
for /f "tokens=*" %%a in (a.x) do (
set /a n+=1
set S!n!=%%a
)
for /l %%a in (0,1,35) do (
  cls
  for /l %%b in (1,1,20) do (
  echo,!S%%b:~%%a,70!
  )
  ping -n 1 127.1>nul
)
for /l %%a in (21,1,%n%) do (echo,!S%%a:~35,70! &ping -n 1 127.1>nul &ping -n 1 127.1>nul)
pause[/code]配合下面的a,x文件

defanive 发表于 2009-1-28 15:21

我上次说的那个网站就是Photo2Text.com

给你找到了哈。。。

defanive 发表于 2009-1-28 15:22

另外说一句,用CIdo做更方便。。。

首先调大缓冲区,然后用CIdo的滚动功能就可以了。。。

lixiaodaoaaa 发表于 2009-1-28 16:13

发现 一个问题

离的越远,看得越清晰,不错

给大家提示一点,实验、测试的方法
首先要下载那个a.x 文件,重命名为a.x
然后运行if exist 写的批代码,就可了

发现一个严重的问题,离得越远看得越清晰。不错
加分

[[i] 本帖最后由 Batcher 于 2009-5-9 20:49 编辑 [/i]]

523066680 发表于 2009-1-28 16:47

哈哈哈哈!!  全是因为那张图好看吧……
记得给我发的这个帖子加分 很多靓图的
[url]http://bbs.bathome.net/thread-3173-1-1.html[/url]

defanive 发表于 2009-1-28 17:31

其实Photo2Text还有很多参数的,可以调整用的字符等。。。

BBCC 发表于 2009-1-28 19:34

如何把一张图片转换成用不同字符表示的文本文件?
原理:
一张m*n大小的图片,实际上可以看成是一个m*n的矩阵。矩阵的每一个元素就是一个Color值,不同的Color值,用不同
的Ascii可以在屏幕上打印显示的字符来代替,于是可以得到一个m*n的每一个元素是一个Ascii字符的两维矩阵,
矩阵的每一行就是像素矩阵的每一行。再把这个字符矩阵输出到文本文件中保存,便可以得到图像对应的文本文件。
当然了,所用的Ascii字符越多,生成的图像也就越逼真。如果只用两个字符,就相当于生成了只有黑白两色的黑白照片一样。
核心代码:
StringBuilder sb = new StringBuilder();
for (int h = 0; h < image.Height; h )
{
for (int w = 0; w < image.Width; w )
{
Color pixelColor = image.GetPixel(w, h);
//用均值法算出灰度值
int red = (pixelColor.R pixelColor.G pixelColor.B)/3;
int green = (pixelColor.R pixelColor.G pixelColor.B)/3;
int blue = (pixelColor.R pixelColor.G pixelColor.B)/3;
Color grayColor = Color.FromArgb(red, green, blue);
int index = (grayColor.R * 10) / 255;
sb.Append(asciiChars[index]); //char[] asciiChars 为存储字符的数组。
}
sb.Append("\r\n"); //一行结束,加一个回车换行
}
网上有在线转换的网站:[url]www.photo2text.com.[/url]

defanive 发表于 2009-1-28 19:43

LS的方法在其他网站也看过,本来想用VC++写个的,但是不会用那些复杂的颜色函数,而且读取文件本身就很麻烦,不同的格式有不同的算法Orz。。。

页: [1]

Powered by Discuz! Archiver 7.2  © 2001-2009 Comsenz Inc.