Convertir en texte brut au format PDF en Python

Pour mon projet, j'obtiens un fichier de texte brut (report.txt) à partir d'un autre programme. Il est tout formaté en texte brut. Si vous l'ouvrir dans le bloc-notes, il a l'air sympa (comme beaucoup comme un fichier texte). Quand j'ouvre le fichier dans Word et de montrer les paragraphes, je vois ... pour les espaces et le recul P de paragraphe.

J'ai besoin de convertir ce fichier au format PDF et ajouter quelques autres pages PDF pour faire un PDF final. Tout cela se produit en Python.

J'ai de la difficulté de la conversion de la report.txt pour pdf. J'ai ReportLab, et je suis capable de lire le fichier et de faire quelques modifications (comme le changement le texte de Courrier), mais l'espacement est perdu. Lorsque le fichier est lu, il semble que toute la bande des espaces supplémentaires.

Questions:
a) est-il un moyen plus facile de convertir la report.txt au format pdf?
b) Si non, est-il un moyen de garder mon espace perso quand j'ai lu le dossier?
c) Ou est-il un paramètre que je suis absent de mon style de paragraphe qui permettra de garder l'aspect d'origine?

Voici mon code:

# ------------------------------------
# Styles
# ------------------------------------

styleSheet = getSampleStyleSheet()
mystyle = ParagraphStyle(name='normal',fontName='Courier',
                         fontSize=10, 
                         alignment=TA_JUSTIFY, 
                         leading=1.2*12,
                         parent=styleSheet['Normal'])       

#=====================================================================================       
model_report = 'report.txt'

# Create document for writing to pdf  
doc = SimpleDocTemplate(str(pdfPath),  \
                        rightMargin=40, leftMargin=40, \
                        topMargin=40, bottomMargin=25, \
                        pageSize=A4)
doc.pagesize = portrait(A4)

# Container for 'Flowable' objects
elements = []    

# Open the model report
infile   = file(model_report).read()
report_paragraphs = infile.split("\n")

for para in report_paragraphs:  
    para1 = '<font face="Courier" >%s</font>' % para 
    elements.append(Paragraph(para1, style=mystyle))
doc.build(elements)

OriginalL'auteur user1327390 | 2012-04-11