字符画
在抖音上看到有人把视频转换成字符视频,感觉很有意思,就试着自己做了一下,结果只做出来图片转字符的网页版。视频转字符java代码已经做好了,但是暂时没有时间移植到服务器上。想要做视频的可以在下面留下联系方式,我会联系你。
下面是demo地址,下载按钮只对Firefox 3.5+、Google Chrome、Opera 12+、IE9+、Safari 6+这些浏览器起作用。
Demo地址:http://blog.jiutucao.com:9000/upload/2018/07/p308h9i786j1dp47799g63hle1.html
下面来说代码思路,代码借鉴了csdn上大神的思路,他的博客地址https://blog.csdn.net/qq_27892551/article/details/50504117,想要详细了解的可以过去看一下。
图片处理的主要思路是
1. 把图片画到canvas上
2. 将图片划分成一个一个区域,并计算出每个区域的平均灰度
3. 定义一系列的字符串,字符串要有明显的复杂程度差距
4. 将计算出的灰度划分等级,每个等级对应一个字符串
5. 将计算出的字符串写到pre中
6. 利用html2canvas,截取pre的内容,转换图片,并提供下载按钮
我主要吧csdn上那位大神的代码加上了截图下载的内容,因为浏览器不兼容html2canvas的原因入了很多坑,尤其感谢顾主席的指导,才让代码最终能跑成功。
下面是动图字符画的效果
相关阅读
转载自 https://blog.csdn.net/smf0504/article/details/516735291、字符数组的定义与初始化字符数组的初始化,最容易理解的方式
GB2312、GBK、GB18030 这几种字符集的主要区别
作者:知乎用户链接:https://www.zhihu.com/question/19677619/answer/12616362来源:知乎著作权归作者所有。商业转载请联系作者获得
时间戳取10位 long timeStampSec = System.currentTimeMillis()/1000; String timestamp = String.format("%010d
常量存储总结局部变量、静态局部变量、全局变量、全局静态变量、字符串常量以及动态申请的内存区1、局部变量存储在栈中2、全局变
ReverseFindCString::ReverseFind ReverseFind 在一个较大的字符串中从末端开始查找某个字符 CString::ReverseFindint ReverseF