Python输出汉字字库及将文字转换为图片的方法


Posted in Python onJune 04, 2016

用python输出汉字字库
问题1:假设我们知道汉字编码范围是0x4E00到0x9FA5,怎么从十六进制的编码转成人类可读的字呢?
问题2:怎么把unicode编码的字写入文件呢,如果直接用open()的话,会提示UnicodeEncodeError: 'ascii' codec can't encode character u'\u4e00' in position 0: ordinal not in range(128)

问题1的答案是用unichr,问题2的答案是用codecs。
下面上代码。

import codecs 
start,end = (0x4E00, 0x9FA5) 
with codecs.open("chinese.txt", "wb", encoding="utf-8") as f: 
 for codepoint in range(int(start),int(end)): 
  f.write(unichr(codepoint))

打开chinese.txt文件,截图如下

Python输出汉字字库及将文字转换为图片的方法

用python将文本转图片字库
上面提到怎么得到汉字字库,下面就来讲怎么把一个一个的字转成图片,这在机器学习中会有用处。
一句话,用pygame渲染文字到图片上。
下面上代码。

import os 
import pygame 
chinese_dir = 'chinese' 
if not os.path.exists(chinese_dir): 
 os.mkdir(chinese_dir) 
 
pygame.init() 
start,end = (0x4E00, 0x9FA5)#汉字编码范围 
for codepoint in range(int(start),int(end)): 
 word = unichr(codepoint) 
 font = pygame.font.Font("msyh.ttc", 22)#当前目录下要有微软雅黑的字体文件msyh.ttc,或者去c:\Windows\Fonts目录下找 
 rtext = font.render(word, True, (0, 0, 0), (255, 255, 255)) 
 pygame.image.save(rtext, os.path.join(chinese_dir,word+".png"))

下面是效果截图。

Python输出汉字字库及将文字转换为图片的方法

Python 相关文章推荐
盘点提高 Python 代码效率的方法
Jul 03 Python
在Python下尝试多线程编程
Apr 28 Python
Pycharm学习教程(1) 定制外观
May 02 Python
python把转列表为集合的方法
Jun 28 Python
python实现在函数中修改变量值的方法
Jul 16 Python
Django如何简单快速实现PUT、DELETE方法
Jul 24 Python
python flask web服务实现更换默认端口和IP的方法
Jul 26 Python
python使用openCV遍历文件夹里所有视频文件并保存成图片
Jan 14 Python
tensorflow estimator 使用hook实现finetune方式
Jan 21 Python
django-crontab实现服务端的定时任务的示例代码
Feb 17 Python
Python程序慢的重要原因
Sep 04 Python
Python Pandas读取Excel日期数据的异常处理方法
Feb 28 Python
使用Python的Flask框架来搭建第一个Web应用程序
Jun 04 #Python
Python的Django中将文件上传至七牛云存储的代码分享
Jun 03 #Python
详解duck typing鸭子类型程序设计与Python的实现示例
Jun 03 #Python
详解字典树Trie结构及其Python代码实现
Jun 03 #Python
Python中利用Scipy包的SIFT方法进行图片识别的实例教程
Jun 03 #Python
Python中的descriptor描述器简明使用指南
Jun 02 #Python
Python黑魔法Descriptor描述符的实例解析
Jun 02 #Python
You might like
PHP filter_var() 函数 Filter 函数
2012/04/25 PHP
php读取excel文件的简单实例
2013/08/26 PHP
PHP编程风格规范分享
2014/01/15 PHP
php命名空间学习详解
2014/02/27 PHP
php curl 上传文件代码实例
2015/04/27 PHP
PHP中Restful api 错误提示返回值实现思路
2016/04/12 PHP
PHP数字前补0的自带函数sprintf 和number_format的用法(详解)
2017/02/06 PHP
thinkPHP框架中layer.js的封装与使用方法示例
2019/01/18 PHP
IE浏览器PNG图片透明效果代码
2008/09/02 Javascript
javascript里使用php代码实例
2014/12/13 Javascript
Backbone.js中的集合详解
2015/01/14 Javascript
JavaScript知识点整理
2015/12/09 Javascript
BootStrap中Datetimepicker和uploadify插件应用实例小结
2016/05/26 Javascript
iframe中使用jquery进行查找的方法【案例分析】
2016/06/17 Javascript
微信小程序 开发之顶部导航栏实例代码
2017/02/23 Javascript
vue基础之事件v-onclick="函数"用法示例
2019/03/11 Javascript
layui 关闭open弹出框 刷新table表格页面的方法
2019/09/16 Javascript
Python tempfile模块学习笔记(临时文件)
2014/05/25 Python
python创建列表并给列表赋初始值的方法
2015/07/28 Python
python多线程之事件Event的使用详解
2018/04/27 Python
python读取csv文件并把文件放入一个list中的实例讲解
2018/04/27 Python
Django+JS 实现点击头像即可更改头像的方法示例
2018/12/26 Python
python自动生成证件号的方法示例
2021/01/14 Python
欧洲著名的珠宝和手表网上商城:uhrcenter
2017/04/10 全球购物
英国最大的正宗复古足球衫制造商和零售商:TOFFS
2018/06/21 全球购物
印度服装购物网站:Limeroad
2018/09/26 全球购物
Furla官网:意大利著名的皮革品牌
2019/08/06 全球购物
银行优秀员工事迹材料
2014/05/29 职场文书
中学生2014国庆节演讲稿:不屈的民族
2014/09/21 职场文书
初三毕业评语
2014/12/26 职场文书
博士导师推荐信
2015/03/25 职场文书
2015年小学图书室工作总结
2015/05/18 职场文书
学生党支部工作总结2015
2015/05/26 职场文书
学校教学管理制度
2015/08/06 职场文书
导游词之云南丽江-泸沽湖
2019/09/26 职场文书
Redis命令处理过程源码解析
2022/02/12 Redis