Files
jonstreeter-ComfyUI-Referen…/utils/test_html.py
T
2020-11-30 22:57:10 +08:00

67 lines
1.9 KiB
Python

import os
import dominate
from dominate.tags import *
class HTML:
def __init__(self, web_dir, title, reflesh=0):
self.title = title
self.web_dir = web_dir
self.img_dir = os.path.join(self.web_dir, "images")
if not os.path.exists(self.web_dir):
os.makedirs(self.web_dir)
if not os.path.exists(self.img_dir):
os.makedirs(self.img_dir)
# print(self.img_dir)
self.doc = dominate.document(title=title)
if reflesh > 0:
with self.doc.head:
meta(http_equiv="reflesh", content=str(reflesh))
def get_image_dir(self):
return self.img_dir
def add_header(self, str):
with self.doc:
h3(str)
def add_table(self, border=1):
self.t = table(border=border, style="table-layout: fixed;")
self.doc.add(self.t)
def add_images(self, ims, txts, links, width=400):
self.add_table()
with self.t:
with tr():
for im, txt, link in zip(ims, txts, links):
with td(style="word-wrap: break-word;", halign="center", valign="top"):
with p():
with a(href=os.path.join("images", link)):
img(style="width:%dpx" % width, src=os.path.join("images", im))
br()
p(txt)
def save(self):
html_file = "%s/index.html" % self.web_dir
f = open(html_file, "wt")
f.write(self.doc.render())
f.close()
if __name__ == "__main__":
html = HTML("web/", "test_html")
html.add_header("hello world")
ims = []
txts = []
links = []
for n in range(4):
ims.append("image_%d.jpg" % n)
txts.append("text_%d" % n)
links.append("image_%d.jpg" % n)
html.add_images(ims, txts, links)
html.add_images(ims, txts, links)
html.save()