mirror of
https://github.com/oobabooga/text-generation-webui.git
synced 2024-12-01 20:04:04 +01:00
Add make_thumbnail function
This commit is contained in:
parent
80dfba05f3
commit
cc6c7a37f3
@ -7,12 +7,13 @@ from datetime import datetime
|
|||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
|
||||||
import yaml
|
import yaml
|
||||||
from PIL import Image, ImageOps
|
from PIL import Image
|
||||||
|
|
||||||
import modules.extensions as extensions_module
|
import modules.extensions as extensions_module
|
||||||
import modules.shared as shared
|
import modules.shared as shared
|
||||||
from modules.extensions import apply_extensions
|
from modules.extensions import apply_extensions
|
||||||
from modules.html_generator import fix_newlines, generate_chat_html
|
from modules.html_generator import (fix_newlines, generate_chat_html,
|
||||||
|
make_thumbnail)
|
||||||
from modules.text_generation import (encode, generate_reply,
|
from modules.text_generation import (encode, generate_reply,
|
||||||
get_max_prompt_length)
|
get_max_prompt_length)
|
||||||
|
|
||||||
@ -333,8 +334,7 @@ def generate_pfp_cache(character):
|
|||||||
|
|
||||||
for path in [Path(f"characters/{character}.{extension}") for extension in ['png', 'jpg', 'jpeg']]:
|
for path in [Path(f"characters/{character}.{extension}") for extension in ['png', 'jpg', 'jpeg']]:
|
||||||
if path.exists():
|
if path.exists():
|
||||||
img = Image.open(path)
|
img = make_thumbnail(Image.open(path))
|
||||||
img = ImageOps.fit(img, (350, 470), Image.ANTIALIAS)
|
|
||||||
img.save(Path('cache/pfp_character.png'), format='PNG')
|
img.save(Path('cache/pfp_character.png'), format='PNG')
|
||||||
return img
|
return img
|
||||||
return None
|
return None
|
||||||
@ -432,6 +432,6 @@ def upload_your_profile_picture(img):
|
|||||||
if Path("cache/pfp_me.png").exists():
|
if Path("cache/pfp_me.png").exists():
|
||||||
Path("cache/pfp_me.png").unlink()
|
Path("cache/pfp_me.png").unlink()
|
||||||
else:
|
else:
|
||||||
img = ImageOps.fit(img, (350, 470), Image.ANTIALIAS)
|
img = make_thumbnail(img)
|
||||||
img.save(Path('cache/pfp_me.png'))
|
img.save(Path('cache/pfp_me.png'))
|
||||||
print('Profile picture saved to "cache/pfp_me.png"')
|
print('Profile picture saved to "cache/pfp_me.png"')
|
||||||
|
@ -96,6 +96,13 @@ def generate_4chan_html(f):
|
|||||||
|
|
||||||
return output
|
return output
|
||||||
|
|
||||||
|
def make_thumbnail(image):
|
||||||
|
image = image.resize((350, round(image.size[1]/image.size[0]*350)), Image.Resampling.LANCZOS)
|
||||||
|
if image.size[1] > 470:
|
||||||
|
image = ImageOps.fit(image, (350, 470), Image.ANTIALIAS)
|
||||||
|
|
||||||
|
return image
|
||||||
|
|
||||||
def get_image_cache(path):
|
def get_image_cache(path):
|
||||||
cache_folder = Path("cache")
|
cache_folder = Path("cache")
|
||||||
if not cache_folder.exists():
|
if not cache_folder.exists():
|
||||||
@ -103,8 +110,7 @@ def get_image_cache(path):
|
|||||||
|
|
||||||
mtime = os.stat(path).st_mtime
|
mtime = os.stat(path).st_mtime
|
||||||
if (path in image_cache and mtime != image_cache[path][0]) or (path not in image_cache):
|
if (path in image_cache and mtime != image_cache[path][0]) or (path not in image_cache):
|
||||||
img = Image.open(path)
|
img = make_thumbnail(Image.open(path))
|
||||||
img = ImageOps.fit(img, (350, 470), Image.ANTIALIAS)
|
|
||||||
output_file = Path(f'cache/{path.name}_cache.png')
|
output_file = Path(f'cache/{path.name}_cache.png')
|
||||||
img.convert('RGB').save(output_file, format='PNG')
|
img.convert('RGB').save(output_file, format='PNG')
|
||||||
image_cache[path] = [mtime, output_file.as_posix()]
|
image_cache[path] = [mtime, output_file.as_posix()]
|
||||||
|
Loading…
Reference in New Issue
Block a user