持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第12天,点击查看活动详情
写在前面的废话(可以不看)
大四了,没想到还能面对这样的困境,三千字的社会实践报告拼拼凑凑摘下来。结果老师说,要手写,然后拍照上传。
恰好,我大二的时候做过一个大创项目。主要思路是对标手写机器人,
因为手写机器人相当于一个不间歇的人工,他的效率其实并不高,而且这个成本也不低。于是我就想利用学到的GAN网络结构来构建手写字体TTF。主要工作就是
通过用户录入的少量手写体汉字进行字体特征重建,估计用户未书写字形的字体风格特征。学习从参考汉字特征到带有用户书写风格的对应汉字的字体特征的变换关系,对用户没有书写的汉字集合进行字体特征重建。
将参考字体的字形内容与用户书写风格结合,从参考字体风格迁移到目标手写体风格,生成目标字形图片,从而得到完整的中文手写体字库文件。
主要参考就是:Zi2zi,ReWrite,当然最近出现的StarGAN好像也很猛。
这样生成自己的字体之后是需要搞到纸张上或者现实的打印机中,于是我后面的工作就是自动排版方法。当然,后面感觉有点烂尾了,这个在电脑中转换成手写字体没问题,但是搞到打印机上面需要更加深入的研究。
不过现有的东西应付这种抄写文字的图片是完全没问题的。
先贴出成果图
开源地址
下面开始,如何介绍用这个工具。
需要python3的环境。
一、下载需要的第三方库
pip install -r requirements.txt
生成第三方库依赖文件如如下: pipreqs --encoding=utf8 . #生成requirements.txt文件
二、在Fonts文件夹中挑出想要的字体
在main.py的ttf_file中更改你想要的字体
三、导入自己的文本文档
在main.py的txt_file中更改你想要的字体,目前仅支持.docx形式的文档。
docs建议搞个段落重排,首行不要用空格缩进,一定要用tab缩进。不要用空段落。
四、选择模板
在main.py中选择你想要的模板,也就是背景。目前仅支持,三种模板。
如果想要弄成自己的纸张背景,可以在
template.py文件中加入自己试出来的各种参数。
五、运行程序
生成的图片在output文件夹中,记得用过一次清空,不然之前的文件会被覆盖。
祝大家学习生活愉快
非常不推荐大家用这种方式去欺骗老师,尤其是形策。但是也希望老师能够考虑到手抄作业的合理性。