diff options
| author | navanchauhan <navanchauhan@gmail.com> | 2022-12-30 18:59:09 -0500 | 
|---|---|---|
| committer | navanchauhan <navanchauhan@gmail.com> | 2022-12-30 18:59:09 -0500 | 
| commit | 1824310fb1701af8c682398f9e9290c9fe9fde0d (patch) | |
| tree | 5ee27ba8c64afbd3b9e9c41562ec44fc885863e3 | |
| parent | 28a54e527ba7a6908ed36e524f8431ac9519d770 (diff) | |
generate images
| -rw-r--r-- | generate_me.py | 31 | 
1 files changed, 29 insertions, 2 deletions
| diff --git a/generate_me.py b/generate_me.py index ae19ebd..a0fcffd 100644 --- a/generate_me.py +++ b/generate_me.py @@ -4,6 +4,7 @@ from jinja2 import Environment, FileSystemLoader  from distutils.dir_util import copy_tree  import datetime  import email.utils +from helper_libs.image_utils import ImageText  templates = Environment(loader=FileSystemLoader("templates"))  src_folder = "Content" @@ -14,6 +15,11 @@ f_title = "Navan's Archive"  f_description = "Rare Tips, Tricks and Posts"  f_date = email.utils.format_datetime(datetime.datetime.now())  +image_title_color = (74, 74, 74) +image_line_color = (29,116,132) +image_title_font = "fonts/futura_bold.ttf" +image_text_font = "fonts/futura_light.ttf" +  md = Markdown(extras=["fenced-code-blocks","metadata","task_list","tables","target-blank-links"])  def render_markdown_post(html,metadata=None,template="post.html",posts=[]): @@ -62,8 +68,27 @@ for x in os.walk(src_folder):  						_post["title"] = _post_title  						_post["link"] = fpath.replace(src_folder,"").replace("md","html")  						_post["tags"] = [x.strip() for x in _post["tags"].split(",")] +						_post["image_link"] = "/images/opengraph" + fpath.replace(src_folder,"").replace("md","png") + +						to_write_path = "./Resources" + _post["image_link"] +						img = ImageText((1200,630), background=(238,238,238)) +						img.write_text_box((100, 50), _post_title, box_width=1000, font_filename=image_title_font, +                    		font_size=65, color=image_title_color, place='center') +						img.line(shape=[(400, 400), (800, 400)],fill=image_line_color) +						img.write_text_box((100, 430), f'Tags: {", ".join(_post["tags"])}', box_width=1000, font_filename=image_text_font, +    						font_size=32, color=(0,0,0), place='left') +						img.write_text_box((100, 400), f'Date: {_post["date"]}', box_width=1000, font_filename=image_text_font, +    						font_size=32, color=(0,0,0), place='left') +						try: +							img.save(to_write_path) +						except FileNotFoundError as e: +							if not os.path.exists(to_write_path.rsplit("/",1)[0]): +								os.makedirs(to_write_path.rsplit("/",1)[0]) +								img.save(to_write_path) +							else: +								print(e) +								exit(1) -						  						if "draft" in _post:  							if _post["draft"] == 'true': @@ -121,4 +146,6 @@ for post in post_collection_html:  with open(os.path.join(out_folder,"feed.rss"),"w") as f:  	f.write(templates.get_template("feed.rss").render(feed={  	"title":f_title,"date":f_date,"description":f_description,"link":base_link -	},posts=post_collection_html))
\ No newline at end of file +	},posts=post_collection_html)) + +copy_tree(resources_folder,out_folder)
\ No newline at end of file | 
