Commit 0aec19d7 authored by AUTOMATIC's avatar AUTOMATIC

make pasting into img2img prompt work

make image params request not use temp files
parent 33ae6be5
import datetime
import io
import math
import os
from collections import namedtuple
......@@ -465,21 +466,20 @@ def save_image(image, path, basename, seed=None, prompt=None, extension='png', i
return fullfn, txt_fullfn
def image_data(image_path):
file, ext = os.path.splitext(image_path.name)
data = {}
if "png" in ext:
image = Image.open(image_path.name, "r")
print(f"Image data requested for {image_path.name} {image.format} of {type(image)}")
def image_data(data):
try:
data = image.text["parameters"]
except Exception as e:
print(f"Exception: {e}")
image = Image.open(io.BytesIO(data))
textinfo = image.text["parameters"]
return textinfo, None
except Exception:
pass
try:
text = data.decode('utf8')
assert len(text) < 10000
return text, None
except Exception:
pass
print(f"Image data: {data}")
if "txt" in ext:
myfile = open(image_path.name, 'r')
data = myfile.read()
myfile.close()
return data, None
return '', None
......@@ -514,7 +514,7 @@ def create_ui(wrap_gradio_gpu_call):
with gr.Blocks(analytics_enabled=False) as txt2img_interface:
txt2img_prompt, roll, txt2img_prompt_style, txt2img_negative_prompt, txt2img_prompt_style2, submit, _, _, txt2img_prompt_style_apply, txt2img_save_style, paste, token_counter, token_button = create_toprow(is_img2img=False)
dummy_component = gr.Label(visible=False)
txt_prompt_img = gr.File(label="", elem_id="txt2img_prompt_image", file_count="single", type="file", visible=False)
txt_prompt_img = gr.File(label="", elem_id="txt2img_prompt_image", file_count="single", type="bytes", visible=False)
with gr.Row(elem_id='txt2img_progress_row'):
with gr.Column(scale=1):
......@@ -620,7 +620,6 @@ def create_ui(wrap_gradio_gpu_call):
txt_prompt_img.change(
fn=modules.images.image_data,
# _js = "get_extras_tab_index",
inputs=[
txt_prompt_img
],
......@@ -692,8 +691,7 @@ def create_ui(wrap_gradio_gpu_call):
img2img_prompt, roll, img2img_prompt_style, img2img_negative_prompt, img2img_prompt_style2, submit, img2img_interrogate, img2img_deepbooru, img2img_prompt_style_apply, img2img_save_style, paste, token_counter, token_button = create_toprow(is_img2img=True)
with gr.Row(elem_id='img2img_progress_row'):
img2img_prompt_img = gr.File(label="", elem_id="txt_prompt_image", file_count="single", type="file",
visible=False)
img2img_prompt_img = gr.File(label="", elem_id="img2img_prompt_image", file_count="single", type="bytes", visible=False)
with gr.Column(scale=1):
pass
......@@ -791,9 +789,8 @@ def create_ui(wrap_gradio_gpu_call):
img2img_prompt_img.change(
fn=modules.images.image_data,
# _js = "get_extras_tab_index",
inputs=[
txt_prompt_img
img2img_prompt_img
],
outputs=[
img2img_prompt,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment