From 4b695514de664f60e8ea46c17f08836e3345d834 Mon Sep 17 00:00:00 2001 From: DenOfEquity <166248528+DenOfEquity@users.noreply.github.com> Date: Tue, 8 Oct 2024 12:18:39 +0100 Subject: [PATCH] preserve infotext with Extras > Single Image (#2006) credit to @PumpkinHat https://github.com/lllyasviel/stable-diffusion-webui-forge/issues/1779#issuecomment-2364974588 --- modules_forge/forge_canvas/canvas.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/modules_forge/forge_canvas/canvas.py b/modules_forge/forge_canvas/canvas.py index 9c315c70..b7e354af 100644 --- a/modules_forge/forge_canvas/canvas.py +++ b/modules_forge/forge_canvas/canvas.py @@ -77,6 +77,7 @@ class LogicalImage(gr.Textbox): @wraps(gr.Textbox.__init__) def __init__(self, *args, numpy=True, **kwargs): self.numpy = numpy + self.infotext = dict() if 'value' in kwargs: initial_value = kwargs['value'] @@ -94,11 +95,16 @@ class LogicalImage(gr.Textbox): if not payload.startswith("data:image/png;base64,"): return None - return base64_to_image(payload, numpy=self.numpy) + image = base64_to_image(payload, numpy=self.numpy) + image.info = self.infotext + + return image def postprocess(self, value): if value is None: return None + + self.infotext = value.info return image_to_base64(value, numpy=self.numpy)