我是python的xhtml2pdf的新手,用可读格式的python编写html代码有些麻烦。我想知道如何在pisa文档中包含.html文件。这是我创建pdf文件的简单代码:
from xhtml2pdf import pisa
def main():
filename = "simplePrint.pdf"
# generate content
xhtml = "<h1 align='center'>Test print</h1>\n"
xhtml += "<h2>This is printed from within a Python application</h2>\n"
xhtml += "<p style=\"color:red;\">Coloured red using css</p>\n"
pdf = pisa.CreatePDF(xhtml, file(filename, "w"))
if __name__ == "__main__":
main()
如果html的代码太大,我想制作另一个模块,将其放在myHtml.html文件中并包含在第3行的最后一行中:
pdf = pisa.CreatePDF(myHtml.html, file(filename, "w"))
我是如何解决这个问题的?
答案 0 :(得分:1)
如果我理解正确,那么您想要的可能是与上面代码myHtml.py
相同的目录中的另一个文件,如下所示:
html = "<h1 align='center'>Test print</h1>\n"
html += "<h2>This is printed from within a Python application</h2>\n"
html += "<p style=\"color:red;\">Coloured red using css</p>\n"
然后在上面的代码import myHtml
开头。
但是,我相信如果你将html放入一个名为myTemplate.html
的html文件中会更好。然后你可以这样读取文件:
template = open("myTemplate.html")
pdf = pisa.CreatePDF(template.read(), file(filename, "w"))
template.close()