2013-02-08 127 views
1

我试图将reportlab生成的PDF文件保存到特定位置。可能吗?代码将pdf创建到自己的目录。reportlab保存位置

def myFirstPage(canvas, doc): 
    canvas.saveState() 
    canvas.setFont('Times-Bold',16) 
    canvas.drawCentredString(PAGE_WIDTH/2.0, PAGE_HEIGHT-108, Title) 
    canvas.setFont('Times-Roman',9) 
    canvas.restoreState() 

def create_pdf(sometext): 
    doc = SimpleDocTemplate("myfile.pdf") 
    Story = [Spacer(1,2*inch)] 
    style = styles["Normal"] 
    bogustext = ("There is something: %s. " % sometext) 
    p = Paragraph(bogustext, style) 
    Story.append(p) 
    Story.append(Spacer(1,0.2*inch)) 
    doc.build(Story, onFirstPage=myFirstPage) 

回答

2

是的,这是可能的。我建议使用os.path.join来建立路径。例如:

import os 

def create_pdf(sometext): 
    outfilename = "myfile.pdf" 
    outfiledir = '/somedir' 
    outfilepath = os.path.join(outfiledir, outfilename) 
    doc = SimpleDocTemplate(outfilepath) 
    # ...