我正在尝试在图片上显示文字。现在文本在图像下方,或者如果我在网格中放置一行= 0消失。我假设它在图像后面。我似乎无法让它发挥作用。我的代码是:
from Tkinter import *
from PIL import ImageTk
import csv
import time
root = Tk()
image = ImageTk.PhotoImage(file='C:\Users\Shawn\PycharmProjects\Test\Background.gif')
var0 = StringVar()
var1 = StringVar()
var2 = StringVar()
var3 = StringVar()
label0 = Label(root, fg="white", textvariable=var0)
label1 = Label(root, fg="white", textvariable=var1)
label2 = Label(root, fg="white", textvariable=var2)
label3 = Label(root, fg="white", textvariable=var3)
# ----------------------------------------------------------------------
def csv_dict_reader(file_obj):
reader = csv.DictReader(file_obj, delimiter=',')
for column in reader:
if (column["Week"]) == (time.strftime("%U")):
var0.set(column["Parashat"])
var1.set(column["Torah"])
var2.set(column["Haftarah"])
var3.set(column["Gospel"])
# ----------------------------------------------------------------------
if __name__ == "__main__":
with open("Torah.csv") as f_obj:
csv_dict_reader(f_obj)
Label(root, image=image).grid(row=0, column=0)
label0.grid()
label1.grid()
label2.grid()
label3.grid()
mainloop()
我尝试将行和列放在label0.grid(row = 1,column = 1)中,以及所有标签以及所有行号和列号。
我想要的结果是label0 - label3以图像顶部为中心。图像为黑色和深蓝色,因此白色文本将显示良好。谢谢。
肖恩
答案 0 :(得分:0)
您可以通过将文字选项添加到带有照片的标签中来执行此操作。然后查看compound功能进行格式化。它看起来像这样:
label=Label(image=image, text="Text", compound="center")
答案 1 :(得分:0)
在下面的代码中,原始位置设置为(0,0),它属于左上角
import cv2
font = cv2.FONT_HERSHEY_SIMPLEX
orgin = (0, 0)
fontScale = 1
color = (255, 0, 0)
thickness = 2
image = cv2.putText(image, 'OpenCV', orgin, font,
fontScale, color, thickness, cv2.LINE_AA)