让我提供一些背景知识。 我志愿参与的一个组织为假期期间无法接送的人提供膳食。 他们目前有一个SQL Server数据库,用于存储所有客户的信息以及每年的用餐信息。 目前,Java桌面应用程序连接到SQL Server DB,并允许发生多个功能。
即。添加客户端,添加餐食,删除客户,打印交货单。
我希望使用python Flask将应用程序重写为基于Web的应用程序。我目前感兴趣的一个功能是打印发送表功能。
这种方式的工作方式是当年的设置。当您单击年份打印交货按钮时,它会将每个客户的文档批量打印到8.5" x 11.5"纸。工作表将分成两部分,每一面都有相同的确切信息。该信息包括客户姓名,地址,用餐次数等。
我想知道的是如何/什么是设置此模板的最佳方式,以便我可以使用python批量打印它。我正在考虑为页面创建一个html模板,但我不确定它是如何工作的。
我再次需要将该年度内的每位客户传入模板并批量打印到8.5"按11.5"片。
我要问的是......
我如何为印刷品创建一个模板,我可以通过每个客户两个。 我将如何为每个客户以批量方式为每个客户打印该模板。
如果可能的话,我希望在python中完成所有这些操作。 感谢您的时间和帮助。
答案 0 :(得分:0)
如果您已将其部署为Web应用程序,则设计和生成pdf可能会更容易。您可以使用html到pdf转换器,其中有几个在PyPI上,或者有大量的在线资源,例如:
一旦找到了生成PDF的方法,您就可以像使用任何其他PDF一样使用它们,并让用户下载它们或从浏览器中打印它们(这可能需要一些Javascript,但这不应该&这很难,因为它应该只是一个window.open
电话。
例如,您可以添加一个按钮
<button onclick="getPDF()">Download PDF</button>
然后将调用您定义的名为getPDF()
的函数,该函数会找到生成pdf的方法。
function getPDF() {
// Find the uri for the pdf by some method
var urlToPdf = getUrlToPdf();
// Open PDF in new window
window.open(urlToPdf, "_blank");
}
注意由于您使用的是Flask,因此您可以在页面的源代码中包含pdf的URL,甚至是使用{{ }}
语法的Javascript。然后只有当有人请求路由时才会生成pdfs。
这样您就不必担心自己连接打印机了,只需使用浏览器来处理这类任务。