我正在寻找一种从Python程序创建一张标签的方法,作为PDF文件。每个标签都有一个或两个图像,以及几行文本(相同的字体,例如Helvetica或Arial,但可能有不同的大小,并使用粗体和斜体)。这些是标签,重要的是元素在页面上正确定位。有些标签是地址,因此文本可能会有所不同,并且行长和行数不同。
我希望能够判断文本何时不适合可用的空间,以便程序可以自动尝试一些策略(例如,将字体更改为Arial Narrow,减小字体大小),然后再进行挽救。我绝对不希望文本超出或包装,恕不另行通知。
我看过pypdf,但它似乎无法做我需要的东西(或者我可能缺少一些东西)。我不介意使用支持我需要的功能的库创建不同格式的文档,只要它可以通过编程方式转换为PDF。作为最后的手段,我也可以使用一个可以创建光栅图像的库,因为它可以简单地转换为PDF,但我更喜欢包含原生文本的PDF,而不仅仅是它的位图。
答案 0 :(得分:17)
看一下reportlab。
以下是用户指南: https://www.reportlab.com/docs/reportlab-userguide.pdf
这是一个不错的Tutorail: http://www.blog.pythonlibrary.org/2010/03/08/a-simple-step-by-step-reportlab-tutorial/