注意:自2005年以来,PSDraw模块似乎没有得到积极的维护;我想大部分工作已经被重新导向支持PDF格式。您可能更喜欢使用pypdf;
它在源代码中有类似“FIXME:incomplete”和“NOT YET IMPLEMENTED”的注释
它似乎没有任何设置页面大小的方法-我记得这意味着它默认为A4(8.26 x 11.69英寸)
所有测量值均以点为单位,每英寸72点。
你需要做如下事情:import Image
import PSDraw
# fns for measurement conversion
PTS = lambda x: 1.00 * x # points
INS = lambda x: 72.00 * x # inches-to-points
CMS = lambda x: 28.35 * x # centimeters-to-points
outputFile = 'myfilename.ps'
outputFileTitle = 'Wheel Tag 36147'
myf = open(outputFile,'w')
ps = PSDraw.PSDraw(myf)
ps.begin_document(outputFileTitle)
ps现在是一个PSDraw对象,它将把PostScript写入指定的文件,并且文档头已经被写入,您可以开始绘制了。
要添加图像:im = Image.open("myimage.jpg")
box = ( # bounding-box for positioning on page
INS(1), # left
INS(1), # top
INS(3), # right
INS(3) # bottom
)
dpi = 300 # desired on-page resolution
ps.image(box, im, dpi)
要添加文本:ps.setfont("Helvetica", PTS(12)) # PostScript fonts only -
# must be one which your printer has available
loc = ( # where to put the text?
INS(1), # horizontal value - I do not know whether it is left- or middle-aligned
INS(3.25) # vertical value - I do not know whether it is top- or bottom-aligned
)
ps.text(loc, "Here is some text")
要添加行:lineFrom = ( INS(4), INS(1) )
lineTo = ( INS(4), INS(9) )
ps.line( lineFrom, lineTo )
。。。我也看不到任何改变中风体重的选择。
完成后,必须关闭文件,如下所示:ps.end_document()
myf.close()
编辑:我读了一点关于设置笔划权重的内容,我遇到了另一个模块psfile:http://seehuhn.de/pages/psfile#sec:2.0.0模块本身看起来很小-他正在写很多原始的postscript-但是它应该能让你更好地了解幕后的情况。