2017-01-09 10 views
0

私はreport labとpythonの新人です。私はreportlabであなたが段落とテーブルでテストをラップすることができますが、私は可変テキストのレポートを描画していることがあります。テキストは2つの長さがあり、ラップする必要があることがあります。長すぎる場合、ラップされるようにreportlabのdrawstringにテキスト送信を許可する方法はありますか?ReportLabひもでひだをつける

システム情報: のWindows 8マシン、ReportLabの3.3、Pythonの3

答えて

1

それはラッピングはできません巾着のように見えます。私はtextwrapのpython関数を使って問題を解決しました。元の文字列をリストに分割し、リストの結果を取得し、一定の長さを経過した場合は手動で新しい文字列を作成します。

import textwrap 



if len(originalstring) > 45: 
     wrap_text = textwrap.wrap(originalstring, width=45) 
     canvas.drawString(coordx, coordy, wrap_text[0]) 
     canvas.drawString(coordx, coordy, wrap_text[1]) 
    else: 
     canvas.drawString(coordx, coordy, originalstring) 
+0

Stackoverflowで、あなたは*あなたが有用である*すべての*質問や回答をupvoteする必要があります。あなたの質問に答えの一つがあなたの問題に適しているなら、それを受け入れられた答えとしてマークすることができます。ガイドラインについては、[ヘルプセンター](http://stackoverflow.com/help/someone-answers)を参照してください。これはあなた自身の質問に答えるときにも適用されます。 –

関連する問題