Limit preview to webp and RGB jpeg.
This commit is contained in:
parent
9f3a19b728
commit
2ec980bb9f
13
server.py
13
server.py
|
@ -221,19 +221,18 @@ class PromptServer():
|
|||
with Image.open(file) as img:
|
||||
preview_info = request.rel_url.query['preview'].split(';')
|
||||
|
||||
if preview_info[0] == "L" or preview_info[0] == "l":
|
||||
img = img.convert("L")
|
||||
image_format = preview_info[1]
|
||||
else:
|
||||
img = img.convert("RGB") # jpeg doesn't support RGBA
|
||||
image_format = preview_info[0]
|
||||
image_format = preview_info[0]
|
||||
if image_format not in ['webp', 'jpeg']:
|
||||
image_format = 'webp'
|
||||
|
||||
quality = 90
|
||||
if preview_info[-1].isdigit():
|
||||
quality = int(preview_info[-1])
|
||||
|
||||
buffer = BytesIO()
|
||||
img.save(buffer, format=image_format, optimize=True, quality=quality)
|
||||
if image_format in ['jpeg']:
|
||||
img = img.convert("RGB")
|
||||
img.save(buffer, format=image_format, quality=quality)
|
||||
buffer.seek(0)
|
||||
|
||||
return web.Response(body=buffer.read(), content_type=f'image/{image_format}',
|
||||
|
|
|
@ -465,12 +465,11 @@ export class ComfyUI {
|
|||
/**
|
||||
* file format for preview
|
||||
*
|
||||
* L?;format;quality
|
||||
* format;quality
|
||||
*
|
||||
* ex)
|
||||
* L;webp;50 -> grayscale, webp, quality 50
|
||||
* webp;50 -> webp, quality 50
|
||||
* jpeg;80 -> rgb, jpeg, quality 80
|
||||
* png -> rgb, png, default quality(=90)
|
||||
*
|
||||
* @type {string}
|
||||
*/
|
||||
|
|
Loading…
Reference in New Issue