python生成字母图片_【IT专家】Python PIL创建文字图片

本文由我司收集整编,推荐下载,如有疑问,请与我司联系

Python PIL

创建文字图片

PIL

库中包含了很多模块,恰当地利用这些模块可以做许多图像处理方面的工

作。

下面是我用来生成字母或字符串测试图片而写的类及测试代码。

主要用到的模块:

PIL.Image,PIL.ImageDraw,PIL.ImageFont

PIL.Image

用来生成一个空的图片,

ImageDraw

用来在空图片上画图及写字符,

ImageFont

则是创建需要使用到的字体

主要用到的代码:

#

创建一个空的图片

self.img

=

Image.new(self.imgMode,

self.imgSize,

self.bg_color)self.drawBrush = ImageDraw.Draw(self.img)#

创建画刷,用来写文字到图

img

#

创建字体,

fontFile

为字体文件,若非系统字体需加详细路径

self.font

=

ImageFont.truetype(fontFile,fontsize)#

使用特定字体写字,

(

textX0,textY0

)为文字开

始的左上角起始位置

self.drawBrush.text((textX0,textY0),

self.letters,

fill=self.fg_color,font=self.font)

详细代码:

#-*-

coding:gb2312

-*-from

PIL

import

Image,ImageDraw,ImageFont,ImageOpsimport

numpy

as

npimport

random

def

__init__(self,fontFile=‘‘,imgSize=(0,0),imgMode=‘RGB’,bg_color=(0,0,0),fg_color=(255,

255,255),fontsize=20):

self.imgSize

=

imgSize

self.imgMode

=

imgMode

self.fontsize

=

fontsize self.bg_color = bg_color self.fg_color = fg_color# self.font = ImageFont.load(‘

牌字体

.ttf’)

if

‘‘==fontFile:

self.font

=

ImageFont.truetype(‘DIN1451.ttf’,

fontsize)

else:

self.font

=

ImageFont.truetype(fontFile,fontsize)

self.letters

=

letters

(self.letterWidth,self.letterHeight)

=

self.font.getsize(letters)

if

self.imgSize==(0,0):

self.imgSize=(self.letterWidth+2,self.letterHeight+2)

self.imgWidth,self.imgHeight=self.imgSize

self.img

=

Image.new(self.imgMode,

self.imgSize,

self.bg_color)

self.drawBrush

=

ImageDraw.Draw(self.img)

textY0

=

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值