我想将csv文件中每个冒号中的所有文本打印到不同的图像中,但在循环通过冒号后,它只打印图像上的最后一个文本。我需要帮助
import pandas as pd
from PIL import Image, ImageDraw, ImageFont
import os
import random
# change directory
os.chdir("C:/Users/V24/Desktop/py_images")
# declare fontsFolder & choose image to print on
my_image = 'python.png'
fontsFolder = 'C:/Windows/Fonts'
fontsFolder = 'fontsfolder'
# reading csv file
a = pd.read_csv("try.csv")
# choose keys
album = a.AlbumID
topics = a.Topics
Name = random.randrange(1,100)
full_name = str(Name) + ".jpg"
for i,j in zip(album,topics):
print ('i have album id of : ' + str(i) + ' ' + str(j))
name = 0
name = name + 1
full_name = str(name) + ".jpg"
img = Image.open(my_image)
draw = ImageDraw.Draw(img)
fontsFolder = 'fontsfolder'
arialFont = ImageFont.truetype(os.path.join(fontsFolder, 'arial.ttf'), 16)
draw.text((80,70), str(i), font=arialFont, fill=('black'))
draw.text((80,150), str(j),font=arialFont, fill='midnightblue')
img.save(full_name)```
你在一个未定义的变量上循环
我没有要测试的csv文件,但它应该可以工作。另外,一般来说,使用大小写不同的变量(名称与名称)是非常危险的。考虑到“name”包含一个数字,可以将其称为index
相关问题 更多 >
编程相关推荐