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实现bucket排序算法实例分析
May 04 Python
浅析python递归函数和河内塔问题
Apr 18 Python
详解python Todo清单实战
Nov 01 Python
对python打乱数据集中X,y标签对的方法详解
Dec 14 Python
Python求一批字符串的最长公共前缀算法示例
Mar 02 Python
使用python进行波形及频谱绘制的方法
Jun 17 Python
对Python中小整数对象池和大整数对象池的使用详解
Jul 09 Python
对Python生成器、装饰器、递归的使用详解
Jul 19 Python
python实现提取str字符串/json中多级目录下的某个值
Feb 27 Python
Python基于BeautifulSoup爬取京东商品信息
Jun 01 Python
Python实现自动签到脚本功能
Aug 20 Python
Python自然语言处理之切分算法详解
Apr 25 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
PHP5中的时间相差8小时的解决办法
2008/03/28 PHP
php生成txt文件实例代码介绍
2016/04/28 PHP
PhpStorm2020.1 安装 debug - Postman 调用的详细教程
2020/08/17 PHP
将HTMLCollection/NodeList/伪数组转换成数组的实现方法
2011/06/20 Javascript
Mac地址验证的javascript代码
2013/11/09 Javascript
零基础搭建Node.js、Express、Ejs、Mongodb服务器及应用开发入门
2014/12/20 Javascript
jquery实现LED广告牌旋转系统图片切换效果代码分享
2015/08/26 Javascript
servlet+jquery实现文件上传进度条示例代码
2017/01/25 Javascript
AngularJS表单验证功能分析
2017/05/26 Javascript
微信小程序scroll-view横向滑动嵌套for循环的示例代码
2018/09/20 Javascript
JavaScript根据json生成html表格的示例代码
2018/10/24 Javascript
vue-cli3.0+element-ui上传组件el-upload的使用
2018/12/03 Javascript
node实现socket链接与GPRS进行通信的方法
2019/05/20 Javascript
微信小程序自定义波浪组件使用方法详解
2019/09/21 Javascript
微信头像地址失效踩坑记附带解决方案
2019/09/23 Javascript
jquery使用echarts实现有向图可视化功能示例
2019/11/25 jQuery
Openlayers测量距离与面积的实现方法
2020/09/25 Javascript
vue+vant实现购物车全选和反选功能
2020/11/17 Vue.js
python实现红包裂变算法
2016/02/16 Python
python 3.6 tkinter+urllib+json实现火车车次信息查询功能
2017/12/20 Python
简单了解什么是神经网络
2017/12/23 Python
使用python装饰器计算函数运行时间的实例
2018/04/21 Python
NumPy 数学函数及代数运算的实现代码
2018/07/18 Python
Pytorch中Tensor与各种图像格式的相互转化详解
2019/12/26 Python
Python中Yield的基本用法
2020/10/18 Python
浅谈Python xlwings 读取Excel文件的正确姿势
2021/02/26 Python
CSS3实现王者匹配时的粒子动画效果
2019/04/12 HTML / CSS
GWT的应用有哪两种部署模式
2012/12/21 面试题
优秀志愿者事迹材料
2014/02/03 职场文书
美术指导助理求职信
2014/04/20 职场文书
幼儿发展评估方案
2014/06/11 职场文书
倡议书的写法
2014/08/30 职场文书
上下班时间调整通知
2015/04/23 职场文书
办公室管理规章制度
2015/08/04 职场文书
大学生活委员竞选稿
2015/11/21 职场文书
在Python中如何使用yield
2021/06/07 Python