加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python 图像上写中文字体

发布时间:2020-12-20 10:13:22 所属栏目:Python 来源:网络整理
导读:本人处理图像的时候经常使用opencv的包,但是 cv2.putText 显示不了中文,所以查找了如何在python在图像上写中文的方法,在伟大的Stack Overflow上面找到一个方法,分享给大家。 本文的 Stack Overflow 网址:?https://stackoverflow.com/questions/50854235

本人处理图像的时候经常使用opencv的包,但是 cv2.putText 显示不了中文,所以查找了如何在python在图像上写中文的方法,在伟大的Stack Overflow上面找到一个方法,分享给大家。

本文的 Stack Overflow 网址:?https://stackoverflow.com/questions/50854235/how-to-draw-chinese-text-on-the-image-using-cv2-puttextcorrectly-pythonopen

import cv2

from PIL import ImageFont,ImageDraw,Image

image = cv2.imread(‘image‘)

# 定义宋体路径
fontpath = ‘simsun.ttc‘

# 创建字体对象,并且指定字体大小

font = ImageFont.truetype(fontpath,28)

# 把array格式转换成PIL的image格式

img_pil = Image.fromarray(image)

# 创建一个可用来对其进行draw的对象

draw = ImageDraw.Draw(img_pil)

# 在图像上写上你要写的子

draw.text((30,60),? ‘你好,中国’,font=font,fill=(255,255,255))

# 把PIL的image格式转换回成array格式

save_image = np.array(img_pil)

cv2.imshow(‘image‘,image)

cv2.waitKey()

cv2.destroyAllWindows()

这样就可以在图像上看到中文了。

这边有个细节要提醒下大家,因为本人电脑系统是ubuntu18.04,所以下载的simsun.ttc打开文件一直有错误,所以就在github上找了一个

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读