Python實(shí)現(xiàn)圖片添加文字
在工作中有時(shí)候會(huì)給圖上添加文字,常用的是PS工具,不過我想通過代碼的方式來給圖片添加文字。
需要使用的Python的圖像庫:PIL.更加詳細(xì)的知識(shí)點(diǎn)如下:
Imaga模塊:用來創(chuàng)建,打開,保存圖片文件
- new(path):用來創(chuàng)建一個(gè)新的圖片文件.該文件位于path所在的路徑中。。打開后返回Image類型的圖片。
- open(path):用來打開已經(jīng)存在的圖片文件.該文件位于path所在的路徑中。打開后返回Image類型的圖片。
- save(path):用來把創(chuàng)建或者打開的圖片保到path所在的路徑中。
ImageDraw模塊:用來在圖片上繪制點(diǎn),線,圖形和文字。
- Draw(Image):用來返回一個(gè)ImageDraw類型的圖片,它的參數(shù)為Image類型的圖片。
- text((x,y),str,…):用來在圖片上添加文字,文字位置x,y所在坐標(biāo)處,文字內(nèi)容為str,其它參數(shù)可以控制文字字體和顏色。
下面是完整的代碼,請(qǐng)參考:
from PIL import Image,ImageDraw
def addText(img,string):
size = img.size
width = size[0] - 20
high = size[1] - 20
lenth = len(string)*3
draw = ImageDraw.Draw(img)
draw.text((width-lenth,high),string,fill='black')
oriImg.show()
oriImg.save(path)
path = input("Please input the image file with path")
try:
print("path: "+path)
oriImg = Image.open(path)
addText(oriImg,"good")
except IOError:
print("can't' open the file,check the path again")
newImg = Image.new('RGBA',(320,240),'white')
newImg.save(path)
關(guān)于代碼做以下說明:
在代碼中,會(huì)創(chuàng)建一個(gè)320*240和圖片,背景為白色,里面什么也沒有。
把文字和圖片邊的寬度設(shè)置成了20,這個(gè)可以自己定義。另外,字符占用的長度乘以3是個(gè)經(jīng)驗(yàn)值,也可以修改。
在圖片中添加的文字為'good',這個(gè)可以自己定義。
下面是程序的運(yùn)行結(jié)果:
PS:第一次運(yùn)行時(shí),如果沒有圖片,會(huì)有以下提示,同時(shí)會(huì)創(chuàng)建一個(gè)新的圖片。
Please input the image file with pathH:\download\test.png(this is content of input )
path: H:\download\test.png
can't' open the file,check the path again
以后再次運(yùn)行時(shí),就使用系統(tǒng)默認(rèn)的圖片瀏覽器打開一個(gè)320*240和圖片,圖片右下角有黑色的文字:'good‘ 。
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Pycharm代碼無法復(fù)制,無法選中刪除,無法編輯的解決方法
今天小編就為大家分享一篇Pycharm代碼無法復(fù)制,無法選中刪除,無法編輯的解決方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-10-10
Python 調(diào)用有道翻譯接口實(shí)現(xiàn)翻譯
這篇文章主要介紹了Python 調(diào)用有道翻譯接口實(shí)現(xiàn)翻譯,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-03-03
python-sys.stdout作為默認(rèn)函數(shù)參數(shù)的實(shí)現(xiàn)
今天小編就為大家分享一篇 python-sys.stdout作為默認(rèn)函數(shù)參數(shù)的實(shí)現(xiàn),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-02-02
Windows10下Tensorflow2.0 安裝及環(huán)境配置教程(圖文)
這篇文章主要介紹了Windows10下Tensorflow2.0 安裝及環(huán)境配置教程(圖文),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11

