Use the real images size, not the process

- Use the width/height of the first image in processed.images
- No more need for rounding in prompt_matrix
This commit is contained in:
Francesco Manzali 2023-02-01 21:16:52 +01:00
parent 17b24e45e8
commit 5afd9e82c3
2 changed files with 4 additions and 4 deletions

View File

@ -171,8 +171,8 @@ def draw_grid_annotations(im, width, height, hor_texts, ver_texts):
pad_left = 0 if sum([sum([len(line.text) for line in lines]) for lines in ver_texts]) == 0 else width * 3 // 4
cols = round(im.width / width)
rows = round(im.height / height)
cols = im.width // width
rows = im.height // height
assert cols == len(hor_texts), f'bad number of horizontal texts: {len(hor_texts)}; must be {cols}'
assert rows == len(ver_texts), f'bad number of vertical texts: {len(ver_texts)}; must be {rows}'

View File

@ -79,7 +79,7 @@ class Script(scripts.Script):
processed = process_images(p)
grid = images.image_grid(processed.images, p.batch_size, rows=1 << ((len(prompt_matrix_parts) - 1) // 2))
grid = images.draw_prompt_matrix(grid, max(p.width, p.hr_upscale_to_x), max(p.height, p.hr_upscale_to_y), prompt_matrix_parts)
grid = images.draw_prompt_matrix(grid, processed.images[0].width, processed.images[1].height, prompt_matrix_parts)
processed.images.insert(0, grid)
processed.index_of_first_image = 1
processed.infotexts.insert(0, processed.infotexts[0])