17

Table of Report Lab ライブラリを使用して、PDF レポートに表を印刷しています。セルのコンテンツの自動ラッピングを実行するようにテーブルを構成できるかどうかを知りたいです。

たとえば、列内のセルに収まらないテキストがあります。テーブルがセルの内容を列幅に合わせて自動的に調整してラップを実行することを望みます。出来ますか?

4

3 に答える 3

22

テーブル要素には任意のフロー可能要素を配置できます。同じスタイルを適用できるように、すべてのテーブル要素をフロー可能にすることをお勧めします。あなたの場合、Paragraph flowable が必要になる可能性が最も高いでしょう。例えば。

styles = getSampleStyleSheet()
text = Paragraph("long line",
              styles['Normal'])

テーブルにフィードするデータに「テキスト」を入れると、自動的に折り返されます。

于 2010-01-23T13:56:08.670 に答える
2

私の解決策は、文字列に改行を強制することです:

def __chopLine(line, maxline):

    cant = len(line) / maxline
    cant += 1
    strline = ""
    index = maxline
    for i in range(1,cant):
        index = maxline * i
        strline += "%s\n" %(line[(index-maxline):index])
    strline += "%s\n" %(line[index:])
    return strline
于 2011-03-11T17:54:18.010 に答える