PIL图像处理之ImageDraw与ImageFont

from PIL import Image,ImageDraw
   
   
首先创建一个图片或者打开一个图片
blank = Image.new("RGB",[1024,768],"white")
 
 
创建一个可用来Image操作的对象(必须)
drawObj = ImageDraw.Draw(blank)
 
 

直线


 
 
  1. # 创建一个正方形。 [x1,x2,y1,y2]或者[(x1,x2),(y1,y2)] fill代表的为颜色
  2. drawObj.line([ 100, 100, 100, 600],fill= 'red')
  3. drawObj.line([ 100, 100, 600, 100],fill= 'red')
  4. drawObj.line([ 600, 100, 600, 600], 'black')
  5. drawObj.line([ 100, 600, 600, 600], 'red')
  6. # blank.save('white.jpg','jpeg')

弧线


 
 
  1. # 弧形 [x1,x2,y1,y2] 弧度 颜色
  2. drawObj.arc([ 100, 100, 600, 600], 0, 360,fill= 'black')
  3. drawObj.arc([ 200, 100, 500, 600], 0, 360,fill= 'red')
  4. blank.save( 'black.jpg', 'jpeg')


 
 
  1. # 画圆 [x1,x2,y1,y2] outline边框颜色 fill填充颜色
  2. drawObj.ellipse([ 100, 100, 600, 600],outline= 'black',fill= 'white')
  3. blank.save( 'black.jpg', 'jpeg')

半圆


 
 
  1. # 画半圆 [x1,x2,y1,y2] 弧度 outline弦线颜色 fill填充颜色
  2. drawObj.chord([ 100, 100, 600, 600], 0, 360,outline= 125)
  3. drawObj.chord([ 100, 100, 600, 600], 0, 90,outline= 158)
  4. drawObj.chord([ 100, 100, 600, 600], 90, 180,outline= 99,fill= 'red')
  5. blank.save( 'black.jpg', 'jpeg')

扇形


 
 
  1. # 扇形 [x1,x2,y1,y2] 弧度 outline弦线颜色 fill填充颜色
  2. drawObj.pieslice([ 100, 100, 600, 600], 180, 210,outline= 255)
  3. drawObj.pieslice([ 100, 100, 600, 600], 30, 80,fill= 255)
  4. blank.save( 'black.jpg', 'jpeg')

多边形


 
 
  1. # 多边形
  2. drawObj.polygon([ 10, 23, 45, 6, 77, 87],outline= 'red')
  3. drawObj.polygon([ 10, 20, 30, 40, 50, 90, 70, 80, 90, 100],fill= 'red')
  4. blank.save( 'black.jpg', 'jpeg')

矩形


 
 
  1. # 矩形
  2. drawObj.rectangle(( 200, 200, 500, 500),outline = "red")
  3. drawObj.rectangle(( 250, 300, 450, 400),fill = 128)
  4. blank.save( 'black.jpg', 'jpeg')

加入文字


 
 
  1. # 文字
  2. text = 'i\'m very happy'
  3. # 颜色
  4. drawObj.ink = 0 + 0 * 256 + 255 * 256 * 256
  5. # 加载到图片上
  6. drawObj.text([ 300, 500],text)
  7. blank.save( 'black.jpg', 'jpeg')

ImageFont


 
 
  1. from PIL import ImageFont
  2. # 字体 路径 文字大小
  3. font1 = ImageFont.truetype( r'C:\Windows\Fonts\ahronbd.ttf', 36)
  4. text = 'i\'m very happy'
  5. # 设置 文字位置 文字内容 颜色 文字大小
  6. drawObj.text([ 100, 500],text, 'red',font=font1)
  7. blank.save( 'black.jpg', 'jpeg')

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值