python如何训练图片_Python练习第一题,在图片上加入数字
題目:在頭像(QQ、微信等)右上角加上紅色的數字,類似于微信未讀信息數量那種提示效果。
下面是示例,在圖片上加數字。
用PS很簡單就可以做到,但是如何用Python完成呢?
一、思路:利用Python強大的圖片處理庫——Pillow
下面介紹今天會用到的模塊:The ImageDraw Module,他的功能如下,
支持2D圖像
創建繪畫對象
基本繪畫操作弧/弦/扇形 chord arc pieslice (bbox, strtAng, endAng)
橢圓 ellipse (bbox)
線段/多段線 line (L) draw.line(((60,60),(90,60), (90,90), (60,90), (60,60))) #draw a square
點 point (xy) #單像素點很小看不清,實際中可用實心小圓代替
多邊形 polygon (L) draw.polygon([(60,60), (90,60), (90,90), (60,90)]) #draw a square
矩形 rectangle (bbox) # first coord屬于矩形, second coord不屬于
文字 text(xy,message,font=None) 繪制文字message,文本區域左上角坐標為xy
drawable.text((10, 10), "Hello", fill=(255,0,0), font=None)
文字大小 textsize(message,font=None) 給定文字message,返回所占像素(width,height)
可選參數
矢量字體支持
二、示例練習
環境:Python3.5
from PIL import Image, ImageDraw, ImageFont
img = Image.open('girl.jpg')
draw = ImageDraw.Draw(img)
myfont = ImageFont.truetype('C:/windows/fonts/Arial.ttf', size=80)
fillcolor = "#ff0000"
width, height = img.size
draw.text((40,40),'hello', font=myfont, fill=fillcolor)
img.save('result.jpg','jpeg')
效果展示:
也就是在原圖上加入文字,下面一步步分析過程。
from PIL import Image, ImageDraw, ImageFont
首先導入相關模塊,沒有安裝可以直接用pip安裝
img = Image.open('girl.jpg')
draw = ImageDraw.Draw(img)
打開圖片girl.jpg
myfont = ImageFont.truetype('C:/windows/fonts/Arial.ttf', size=80)
fillcolor = "#ff0000"
width, height = img.size
Arial.ttf是電腦上安裝的字體,fillcolor是填充顏色,#ff0000是十六進制顏色
draw.text((40,40),'hello', font=myfont, fill=fillcolor)
img.save('result.jpg','jpeg')
最后就是添加文字了,(40,40)是位置,'hello'自定義,最后保存。
三、總結
好了,今天的題目講完了,其中我也遇到很多困難,我準備在圖片中加入中文,但是文字無法正常顯示,朋友們,有誰知道答案嗎?
打算以后每天寫一篇題目解析,這些題目在github上都有,最后求一波star(?? . ??)
這是@史江歌大神整理的Python題目,我會詳細講解過程Yixiaohan/show-me-the-code
最后,我想給自己定個目標,2017年利用Python找到一份工作,養活自己。
你呢?
總結
以上是生活随笔為你收集整理的python如何训练图片_Python练习第一题,在图片上加入数字的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php源码怎样安装mysql_安装MyS
- 下一篇: 企业门户网站服务器,企业或个人门户网站对