視頻轉字符畫工具是一款網友開發的小工具,采用python語言制作,可以幫助你生成字符畫,簡單好用!
使用方法
將要制作的視頻放在與EXE文件同目錄下,執行VideoToText.exe,輸入視頻名稱(包括后綴,如1.mp4),將自動生成縮放后的GIF與HTML頁面。
有Python2.7環境的可以自己執行VideoToText.py,通過該文件中的config配置可以自定義生成的字符畫大小與分辨率。
在不修改配置的前提下,每分鐘視頻轉化的字符畫大小約為14MB。
使用注意
因平臺差異,存放路徑中請不要包含中文。FFmpeg.exe與VideoToText.exe請放在同一目錄下。
字符畫轉換關鍵技術
第一個關鍵技術:漢字庫讀取技術
使用漢字庫技術可以做到和操作系統無關性,先了解一下點陣字庫的基本原理。如下所示,下面是一個“字”的點陣圖,在16點陣字庫中一個漢字為16x16點,每一行使用兩個字節表示,如下面示例第一行的十六進制為:0x02和0x00,所以,一個漢字在16點陣字庫中需要占用2x16個字節,24點陣字庫需要3x24個字節,下面僅以16點陣字庫為例,其他點陣類似。
第二個關鍵技術:使用系統字庫進行轉換
其實使用系統字庫是極為自由的方式,因為這樣完全不必關心字庫的技術,這一切都交給系統好了,充分利用系統資源。
如果定義一個設備,然后設定好設備的各種屬性,包括寬度、高度、字體、顏色等,然后在上面繪制文本就可以了,要轉換為字符畫,只需要把設備上的點陣信息轉換為文本即可。配合CreateFontIndirect函數,使用DrawText可以繪制豐富的文本效果。
第三個關鍵技術:圖片轉換為文本
要把圖像轉換為文本,這其中有一個很大的困難,就是文本沒有顏色,所以特別引進了一個概念:文本灰度,就是把不同字母在屏幕上顯示的大小排序,得到一張灰度表,用這個灰度表來轉換圖片,可以達到比較好的效果。
第四個關鍵技術:把文本轉換為圖像
要把文本轉換為圖片,必須獲取兩個重要參數:轉換后的寬和高,要取得這兩個參數,我們可以使用GetTextExtentPoint32函數。
- PC官方版
- 安卓官方手機版
- IOS官方手機版