0

私はReportlabで目次を作成しようとしました(しかし失敗しました...そして私が必要としているもの以上のものを主張しすぎていませんでした..将来的に新しく試してみるかもしれません..) .

ドキュメントのガイドとしていくつかの簡単なテキストがあればとても嬉しいです (ドキュメントは主に Pandas によって生成された番号付きグリッドで構成されています。 Reportlab で生成された .pdf)。

私の目標は非常に単純に見え、2 つのカモノハシを 1 つはタイトル付き、もう 1 つはグリッド付きで追加することでしたが、うまくいきませんでした。それで、私はさらに単純な目標に移り、2つのカモノハシのプレーンテキストを追加しようとしました..しかし、それは再び機能しませんでした... :-(

以下のように私のコード:

# settings
from reportlab.pdfgen import canvas
from reportlab.lib.styles import getSampleStyleSheet
from reportlab.platypus import *
styles = getSampleStyleSheet()
PATH_OUT = "C:\\"
titolo = 'Test.pdf'
doc = SimpleDocTemplate( PATH_OUT + titolo )
elements0 = []
elements1 = []
elements2 = []

# 1-st platypus
elements0.append(Paragraph("The Platypus0", styles['Heading1']))
elements0.append(Paragraph("Very <i>Special</i>!", styles['Normal']))

# 2-nd platypus
elements1.append(Paragraph("The Platypus1", styles['Heading1']))
elements1.append(Paragraph("Very <i>Special</i>!", styles['Normal']))

# append them
elements2 = elements0.append(elements1)

# Write the document
doc.build(elements2)

私が抱えている問題は、 len() 結果のオブジェクトがないために、明らかにクラッシュしていることです。

これに役立つかもしれない提案はありますか?要素0または要素1を使用すると、一方が他方から分離され、非常にスムーズに機能しますが、一方を他方に追加しようとすると、機能しません。なにか提案を ?

どうもありがとう:-) ファビオ。

4

1 に答える 1

2

appendon list はアイテムをその場に追加し、新しいリストを返しません。以下を使用します。

elements2 = elements0.append(elements1)

elements2値が割り当てられ、新しいアイテムが含まれるようにNoneなりました。elements0elements1

elements0[0] -> Paragraph("The Platypus0", styles['Heading1'])
elements0[1] -> Paragraph("Very <i>Special</i>!", styles['Normal'])
elements0[2] -> [Paragraph("The Platypus1", styles['Heading1']), Paragraph("Very <i>Special</i>!", styles['Normal'])

2 つのテキストをまとめたい場合は、連結を使用します。

elements2 = elements0 + elements1
于 2013-10-28T16:27:23.063 に答える