我使用reportlab PDF包和鸭嘴兽来生成一些PDF文件。在linux服务器和WindowsBox上,我有相同的python应用程序,相同版本的reportlab包(尽管python版本2.6.5与2.6.6略有不同)。我使用我自己的字体,我不依赖系统字体。最近,我注意到,在这两个平台上生成的PDF有点不同,有些段落在一个版本中与另一个版本相比垂直上升了几点。在
我试图找出这些平台之间的区别,但我没能找到区别。在
最后,当我比较PDF文件时,一个文件是PDF 1.3,第二个是PDF 1.4版本,所以我认为问题一定是这个。我不知道如何在reportlab中设置PDF版本,请任何人指出如何设置生成的PDF文件的正确版本,或者是否可以设置reportlab输出的其他属性?在
更新:
使用reportlab 2.4版:
reportlab.__version__: $Id: __init__.py 3649 2010-01-20 14:45:53Z damian $
您是否尝试用每个系统上的确切代码生成它们?我在reportlab源代码中进行了快速搜索,发现了一些注释,指出如果使用}方法,那么将生成PDF 1.4而不是1.3。在
setFillAlpha
或{编辑:
进一步看,我相当确定这些方法是reportlab生成PDF 1.4文件的唯一原因。否则,它似乎总是默认为1.3。据我所知,没有界面可以让你切换版本。但是,您可以很容易地修改源代码。只需搜索
pdfdoc.py
并将这一行(在reportlab2.5中大约是第85行)从到
^{pr2}$这将迫使它始终生成PDF 1.4文档。在
希望这有帮助。在
相关问题 更多 >
编程相关推荐