python怎么输出汉语_Python输出汉字字库及将文字转换为图片的方法

本文介绍了如何使用Python将汉字编码范围内的字符转换为人可读的字,并将其写入文件。通过使用unichr和codecs模块解决了Unicode编码问题。接着,利用pygame库将每个汉字转换为图片,保存在指定目录下,为机器学习应用提供了汉字字库的图片形式。
摘要由CSDN通过智能技术生成

用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文件,截图如下

201664103455668.png?201654103512

用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"))

下面是效果截图。

201664103526744.png?201654103537

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

本文地址: http://www.cppcns.com/jiaoben/python/152475.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值