Add vercel

This commit is contained in:
2022-09-29 20:43:05 +02:00
parent 80807adf3d
commit 5282e1b0fd
6 changed files with 24 additions and 33 deletions

1
.gitignore vendored
View File

@@ -1 +0,0 @@
.vercel

View File

@@ -2,6 +2,9 @@ from flask import *
from render.initer import load_themes, render_pic from render.initer import load_themes, render_pic
import os import os
THIS_FOLDER = os.path.dirname(os.path.abspath(__file__))
app = Flask(__name__) app = Flask(__name__)
@@ -10,7 +13,7 @@ def create_pic():
name_query = str(request.args.get("name")) name_query = str(request.args.get("name"))
theme_query = str(request.args.get("t")) theme_query = str(request.args.get("t"))
filename = render_pic(themes, name_query, theme_query) filename = render_pic(themes, name_query, theme_query, THIS_FOLDER)
if filename == "error": if filename == "error":
return "<h1>error</h1><br><h3>check if theme exist or name & theme is given!</h3>" return "<h1>error</h1><br><h3>check if theme exist or name & theme is given!</h3>"
@@ -18,8 +21,9 @@ def create_pic():
return send_file(filename, mimetype='image/gif') return send_file(filename, mimetype='image/gif')
dirs = 'render/outputs' if __name__ == "__main__":
for f in os.listdir(dirs): dirs = os.path.join(THIS_FOLDER, "render/outputs")
for f in os.listdir(dirs):
os.remove(os.path.join(dirs, f)) os.remove(os.path.join(dirs, f))
themes = load_themes() themes = load_themes(THIS_FOLDER)
app.run() app.run()

View File

@@ -4,22 +4,24 @@ from render.utils.render_worker import render_worker
import os import os
def render_pic(themes, name, theme): def render_pic(themes, name, theme, THIS_FOLDER):
file = os.path.join(THIS_FOLDER, f"render/outputs/{name}{theme}.png")
if theme == "None" or name == "None" or len(themes)-1 < int(theme): if theme == "None" or name == "None" or len(themes)-1 < int(theme):
return "error" return "error"
if not os.path.exists(f"render/outputs/{name}{theme}.png"): if not os.path.exists(file):
print("Anfrage noch nicht gerendert, Wird nun erstellt ...") print("Anfrage noch nicht gerendert, Wird nun erstellt ...")
filename = render_worker(name, int(theme), themes) filename = render_worker(name, int(theme), themes, THIS_FOLDER)
return filename return filename
else: else:
print("Anfrage wurde schon gerendert, wird nun übergeben ...") print("Anfrage wurde schon gerendert, wird nun übergeben ...")
return f"render/outputs/{name}{theme}.png" return file
def load_themes(): def load_themes(THIS_FOLDER):
file = open("render/themelist.txt", "r") file = open(os.path.join(THIS_FOLDER, "render/themelist.txt"))
liste = readfile(file) liste = readfile(file)
file.close() file.close()
return liste return liste

View File

@@ -2,16 +2,17 @@ from PIL import Image
from PIL import ImageFont from PIL import ImageFont
from PIL import ImageDraw from PIL import ImageDraw
from render.utils.text_align import get_text_align from render.utils.text_align import get_text_align
import os
def render_worker(name: str, theme: int, themes): def render_worker(name: str, theme: int, themes, THIS_FOLDER:str):
img = Image.open(f"render/themes/{themes[theme].getdataname()}") img = Image.open(os.path.join(THIS_FOLDER, f"render/themes/{themes[theme].getdataname()}"))
font = ImageFont.truetype(f"render/fonts/{themes[theme].getfontname()}", int(themes[theme].getbold())) font = ImageFont.truetype(os.path.join(THIS_FOLDER, f"render/fonts/{themes[theme].getfontname()}"), int(themes[theme].getbold()))
draw = ImageDraw.Draw(img) draw = ImageDraw.Draw(img)
msg = name msg = name
draw.text(get_text_align(msg, font, (1024, 1024)), msg, (int(themes[theme].getcolor1()), int(themes[theme].getcolor2()), int(themes[theme].getcolor3())), font=font) draw.text(get_text_align(msg, font, (1024, 1024)), msg, (int(themes[theme].getcolor1()), int(themes[theme].getcolor2()), int(themes[theme].getcolor3())), font=font)
img.save(f"render/outputs/{name}{theme}.png") img.save(os.path.join(THIS_FOLDER, f"render/outputs/{name}{theme}.png"))
return f"render/outputs/{name}{theme}.png" return os.path.join(THIS_FOLDER, f"render/outputs/{name}{theme}.png")

Binary file not shown.

View File

@@ -1,15 +0,0 @@
{
"version": 2,
"builds": [
{
"src": "./app.py",
"use": "@vercel/python"
}
],
"routes": [
{
"src": "/(.*)",
"dest": "/"
}
]
}