私はPythonとPILを使ってテキストを描画しています。特定の範囲内にテキストをどのように配置するかに関するいくつかのガイドが必要なため、特定のチュートリアルを見つけました:python PILは私のdraw.textの先頭を切ります
コードは機能しますが、奇妙な動作があります。それは弦の上部を食べる。ここでは、それはhttp://img855.imageshack.us/img855/9292/qttempya4744.png
が好きで、ここにはhttp://img546.imageshack.us/img546/8541/outn.jpg
をどのように見えるかですすべき方法ですここに私のコードは次のとおりです。
import os
from PIL import ImageDraw, ImageFont, Image
def draw_text(text, size, fill=None):
font = ImageFont.truetype('C:\exl.ttf', 30)
size = font.getsize(text)# Returns the width and height of the given text, as a 2-tuple.
size = (size[0],size[1]+15)
im = Image.new('RGBA', size, (0, 0, 0, 0)) # Create a blank image with the given size
draw = ImageDraw.Draw(im)
draw.text((0, 25), text, font=font, fill=fill) #Draw text
return im
img = draw_text('zod', 30, (82, 124, 178))
img.save('C:\out.jpg',"JPEG")
print 'Complete!'
os.startfile('C:\out.jpg')
私は他のフォントでこのバグがあまりにも(ゴシックやMS Pゴシックを試してみました)があります。 ヘルプplz :)
私はそれを描画しようとすると、描画された文字列を下に移動しようとすると忘れてしまいますが、出力はまだ上のいくつかのピクセルが欠けています。 – ch1zra
'size'引数のポイントは何ですか? –
私が理解したことから(そして私はちょうどPILに直面しています)、与えられたフォントで描かれた文字列の寸法です。この例では、正確な寸法の空白の画像を作成するので、文字列を完全に(または多少シミュレートするalign:center)合わせることができます。 後で特定の境界内で文字列をセンタリングするために必要になります。 私はこれを生成しようとしています:http://img12.imageshack.us/img12/6908/qttempxd4744.png と私は文字列がそれらの中心になるように各テーブルのセルに必要です。 – ch1zra