源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

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

  • 时间:2021-10-20 19:38 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:Python输出汉字字库及将文字转换为图片的方法
[b]用python输出汉字字库 [/b]问题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文件,截图如下 [img]http://img.1sucai.cn/uploads/article/2018010709/20180107090138_0_68684.jpg[/img] [b]用python将文本转图片字库 [/b]上面提到怎么得到汉字字库,下面就来讲怎么把一个一个的字转成图片,这在机器学习中会有用处。 一句话,用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:WindowsFonts目录下找 
 rtext = font.render(word, True, (0, 0, 0), (255, 255, 255)) 
 pygame.image.save(rtext, os.path.join(chinese_dir,word+".png")) 

下面是效果截图。 [img]http://img.1sucai.cn/uploads/article/2018010709/20180107090138_1_40363.jpg[/img]
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部