2013-08-18 69 views
0

是否有在Python中的圖像上添加文本的最流行方式?我發現了一些完全不同的方法,這似乎是最好的,但它不工作:在Python中向圖像添加文本

from PIL import Image 
from PIL import ImageFont 
from PIL import ImageDraw 
img = Image.open("/full_path/1.jpg") 
draw = ImageDraw.Draw(img) 
font = ImageFont.truetype("/usr/share/fonts/truetype/ubuntu-font-family/Ubuntu-C.ttf", 16) 
draw.text((0, 0),"Sample Text",(255,255,255),font=font) 
img.save('/full_path/sample-out.jpg') 

其運行後,畫面依然沒有在其上的文字。

+1

嘗試把文本其他地方。 IIRC,PIL座標系將(0,0)置於左上角。如果'draw.text()'爲文本的基線獲取一個座標,則您正在圖像之外進行繪製。 –

回答

2

試試這個:

import PIL 
from PIL import ImageFont 
from PIL import Image 
from PIL import ImageDraw 

img=Image.open("pathToImage") 

font = ImageFont.truetype("pathToFont",10) 

draw = ImageDraw.Draw(img) 
draw.text((0, 0),"This is a test",(255,255,0),font=font) 
draw = ImageDraw.Draw(img) 
draw = ImageDraw.Draw(img) 
img.save("a_test.png")