2

画面に表示された特定の単語に対する視線を評価するアイトラッキング調査を実施しようとしています。実験用に画像に変換して画面に表示する必要がある .txt ファイルが多数あります。画面上の各単語の正確な位置と長さがわかるように、テキストをレイアウトする方法を見つけようとしています。

tkinter を使用してキャンバス内にテキストをレイアウトすることを考えました。これが良い方法であるかどうか、また出力を画像に変換する方法がよくわかりません。別の方法として、PIL を使用することもできます。

助言がありますか ?

ありがとう !!!

4

1 に答える 1

2

キャンバスを使用する場合bbox、アイテムのバウンディング ボックスを返すことができます。

from Tkinter import *

def callback(event, text_id):
    print event.widget.bbox(text_id)

root = Tk()
canvas = Canvas(root, width=400, height=200)
text = "the lazy dog jumped over the brown fox"
offset = 20
for word in text.split(" "):
    text_id = canvas.create_text(offset, 50, text=word, anchor=W)
    bbox = canvas.bbox(text_id)
    offset += bbox[2] - bbox[0] + 5
    canvas.tag_bind(text_id, "<Button-1>",
                    lambda e, i=text_id: callback(e, i))
canvas.pack()
root.mainloop()
于 2013-05-21T09:34:41.040 に答える