I got some problem with merging 100 images, so that they build a 10 x 10 huge picture like above: I tried like this:
from PIL import Image
image1 = Image.open("4XP6edit.png")
image2 = Image.open('4MBSedit.png')
(width, height) = image1.size
result_width = 10*width
result_height = 10*height
result = Image.new('RGB', (result_width, result_height))
result.paste(im=image1, box=(0, 0))
result.paste(im=image2, box=(width, 0))
result.paste(im=image2, box=(2*width, 0))
# and so on until 10*width, 0 and than:
result.paste(im=image10, box=(0, height))
result.paste(im=image10, box=(0, 2*height))
This works fine, but I want it to be created automatically in a for loop or sth. But my suggestion doesnt work.. Can someone find my mistake?
length = len(protein_list)
k=0; m=0; j=0
for i in range(length):
image= Image.open(str(protein_list[i] + 'edit.png')
(width, height) = image.size
result_width = 10*width
result_height = 10*height
result = Image.new('RGB', (result_width, result_height))
if (k == 10): k = 0
if (j >= 0 and j <= 9): m = 0
if (j >= 10 and j <= 19): m = 1
if (j >= 20 and j <= 29): m = 2
if (j >= 30 and j <= 39): m = 3
if (j >= 40 and j <= 49): m = 4
if (j >= 50 and j <= 59): m = 5
if (j >= 60 and j <= 69): m = 6
if (j >= 70 and j <= 79): m = 7
if (j >= 80 and j <= 89): m = 8
if (j >= 90 and j <= 99): m = 9
result.paste(im=image, box=(k*width, m*height))
k= k+1
j=j+1
result
I know this if part is really ugly but I am new in programming so please excuse this.. Can someone help me with this?
It shows a huge 10x10 black picture in which a single picture of the proteinedit.png is displayed..
it looks like this