2013-02-08 8 views
1

Я пытаюсь сохранить файл PDF, сгенерированный reportlab, в определенном месте. Является ли это возможным? Код создает PDF в свой собственный каталог.reportlab save location

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) 
    # ...