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
import os
THIS_FOLDER = os.path.dirname(os.path.abspath(__file__))
app = Flask(__name__)
@@ -10,7 +13,7 @@ def create_pic():
name_query = str(request.args.get("name"))
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":
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')
dirs = 'render/outputs'
for f in os.listdir(dirs):
os.remove(os.path.join(dirs, f))
themes = load_themes()
app.run()
if __name__ == "__main__":
dirs = os.path.join(THIS_FOLDER, "render/outputs")
for f in os.listdir(dirs):
os.remove(os.path.join(dirs, f))
themes = load_themes(THIS_FOLDER)
app.run()

View File

@@ -4,22 +4,24 @@ from render.utils.render_worker import render_worker
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):
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 ...")
filename = render_worker(name, int(theme), themes)
filename = render_worker(name, int(theme), themes, THIS_FOLDER)
return filename
else:
print("Anfrage wurde schon gerendert, wird nun übergeben ...")
return f"render/outputs/{name}{theme}.png"
return file
def load_themes():
file = open("render/themelist.txt", "r")
def load_themes(THIS_FOLDER):
file = open(os.path.join(THIS_FOLDER, "render/themelist.txt"))
liste = readfile(file)
file.close()
return liste

View File

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