Preview for images
This commit is contained in:
+22
-12
@@ -1,5 +1,6 @@
|
|||||||
import os
|
import os
|
||||||
import logging
|
import logging
|
||||||
|
import PIL
|
||||||
from os import path
|
from os import path
|
||||||
from meme_otron import img_factory as imgf
|
from meme_otron import img_factory as imgf
|
||||||
from meme_otron import meme_db
|
from meme_otron import meme_db
|
||||||
@@ -11,17 +12,23 @@ imgf.load_fonts()
|
|||||||
meme_db.load_memes()
|
meme_db.load_memes()
|
||||||
|
|
||||||
dst_dir = utils.relative_path(__file__, "templates")
|
dst_dir = utils.relative_path(__file__, "templates")
|
||||||
templates_dir = utils.relative_path(__file__, "..", "templates")
|
prev_dir = utils.relative_path(__file__, "preview")
|
||||||
doc_file = utils.relative_path(__file__, "README.md")
|
doc_file = utils.relative_path(__file__, "README.md")
|
||||||
|
|
||||||
COLUMNS = 3
|
COLUMNS = 3
|
||||||
|
|
||||||
if path.exists(dst_dir):
|
|
||||||
for f in os.listdir(dst_dir):
|
def make_empty(target_dir):
|
||||||
if path.isfile(path.join(dst_dir, f)):
|
if path.exists(target_dir):
|
||||||
os.unlink(path.join(dst_dir, f))
|
for f in os.listdir(target_dir):
|
||||||
else:
|
if path.isfile(path.join(target_dir, f)):
|
||||||
os.mkdir(dst_dir)
|
os.unlink(path.join(target_dir, f))
|
||||||
|
else:
|
||||||
|
os.mkdir(target_dir)
|
||||||
|
|
||||||
|
|
||||||
|
make_empty(dst_dir)
|
||||||
|
make_empty(prev_dir)
|
||||||
|
|
||||||
ids = sorted(meme_db.DATA.keys())
|
ids = sorted(meme_db.DATA.keys())
|
||||||
|
|
||||||
@@ -38,6 +45,8 @@ for i, meme_id in enumerate(ids):
|
|||||||
img = imgf.make(meme.template, meme.texts, debug=True)
|
img = imgf.make(meme.template, meme.texts, debug=True)
|
||||||
if img is not None:
|
if img is not None:
|
||||||
img.save(path.join(dst_dir, meme.template))
|
img.save(path.join(dst_dir, meme.template))
|
||||||
|
img.resize((round(img.size[0] * 512 / img.size[1]), 512), resample=PIL.Image.LANCZOS)
|
||||||
|
img.save(path.join(prev_dir, meme.template))
|
||||||
if i % COLUMNS == 0:
|
if i % COLUMNS == 0:
|
||||||
if info_line is not None and img_line is not None:
|
if info_line is not None and img_line is not None:
|
||||||
doc_content += info_line + img_line
|
doc_content += info_line + img_line
|
||||||
@@ -47,12 +56,13 @@ for i, meme_id in enumerate(ids):
|
|||||||
if len(meme.aliases) > 0:
|
if len(meme.aliases) > 0:
|
||||||
info_line += f"<br>alt: {', '.join(meme.aliases)}"
|
info_line += f"<br>alt: {', '.join(meme.aliases)}"
|
||||||
if meme.info is not None:
|
if meme.info is not None:
|
||||||
info_line += f"<br>[more info]({meme.info}{{:target='_blank'}}"
|
info_line += f"<br><a href='{meme.info}' target='_blank'>more info</a>"
|
||||||
info_line += "|"
|
info_line += "|"
|
||||||
img_line += f"[" \
|
img_line += f"" \
|
||||||
f"{{:height='25vh'}}" \
|
f"<a href='./templates/{meme.template}' target='_blank'>" \
|
||||||
f"](./templates/{meme.template}){{:target='_blank'}}" \
|
f"" \
|
||||||
f"|"
|
f"</a>|"
|
||||||
|
print(i, meme_id)
|
||||||
|
|
||||||
doc_content += "|" * (COLUMNS - (i % COLUMNS))
|
doc_content += "|" * (COLUMNS - (i % COLUMNS))
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user