MeiK/Python 生成动态字符画

Created Mon, 19 Mar 2018 13:32:37 +0000 Modified Wed, 23 Oct 2019 09:43:39 +0800

大概在去年年初,我在知乎上看到一个用户的分享:使用 Python 把一张图片转化为字符画。通过把一张 GIF 切割为多张图片,来逐帧生成字符画,最后将所有的字符画顺序播放,就变成了动态的字符画。看了这个用户的分享,我也想自己写一个生成动态字符画的程序,因此就有了我去年的那个程序(详见:一键制作动态字符画及代码实现)。

前几天,有个B站的UP私信我,想要我程序的完整代码,可我的代码已经不知道跑到哪里去了……因此我拿出了几个小时的时间重新写了一个,并放在了 GitHub 上,这回不用担心代码丢了……

其实生成字符画的操作很简单,使用 Python 的 PIL 库很容易就可以做到。

  1. 将要转换的视频转换为 GIF
  2. 逐帧将 GIF 转换为图片
  3. 将图片转换为要生成的尺寸
  4. 遍历图片的每个位置,找到对应的字符
  5. 将生成的字符画保存起来,以某种方式顺序播放

总共就这几步,代码都已经扔 GitHub 了,如果有想用的可以自己去取。