如果首页已填满,则将动态文本添加到下一页reportlab

时间:2018-06-30 07:00:53

标签: python reportlab

我在“是/否”中有25个问题与答案。每个答案下方都有一个动态文本,该文本可以为空或包含多行文本。如果第一页中没有空格,我希望文本自动转到下一页。我目前正在使用段落,但无法实现以上目的。 Q1,Q2,...; R1,R2 ....; A1,A2 ...;是变量Here is the snapshot of the pdf.

    text = ("Q1.&nbsp;"+Q1+"<br/>Ans.&nbsp;"+R1+"<br/>"+A1+"<br/>"+
            "Q2.&nbsp;"+Q2+"<br/>Ans.&nbsp;"+R2+"<br/>"+A2+"<br/>"+
            "Q3.&nbsp;"+Q3+"<br/>Ans.&nbsp;"+R3+"<br/>"+A3+"<br/>"+
            "Q4.&nbsp;"+Q4+"<br/>Ans.&nbsp;"+R4+"<br/>"+A4+"<br/>"+
            "Q5.&nbsp;"+Q5+"<br/>Ans.&nbsp;"+R5+"<br/>"+A5+"<br/>"+
            "Q4.&nbsp;"+Q6+"<br/>Ans.&nbsp;"+R6+"<br/>"+A6+"<br/>"+
            "Q7.&nbsp;"+Q7+"<br/>Ans.&nbsp;"+R7+"<br/>"+A7+"<br/>"+
            "Q8.&nbsp;"+Q8+"<br/>Ans.&nbsp;"+R8+"<br/>"+A8+"<br/>"+
            "Q9.&nbsp;"+Q9+"<br/>Ans.&nbsp;"+R9+"<br/>"+A9+"<br/>"+
            "Q10.&nbsp;"+Q10+"<br/>Ans.&nbsp;"+R10+"<br/>"+A10+"<br/>"+
            "Q11.&nbsp;"+Q11+"<br/>Ans.&nbsp;"+R11+"<br/>"+A11+"<br/>"+
            "Q12.&nbsp;"+Q12+"<br/>Ans.&nbsp;"+R12+"<br/>"+A12+"<br/>"+
            "Q13.&nbsp;"+Q13+"<br/>Ans.&nbsp;"+R13+"<br/>"+A13+"<br/>"+
            "Q14.&nbsp;"+Q14+"<br/>Ans.&nbsp;"+R14+"<br/>"+A14+"<br/>"+
            "Q15.&nbsp;"+Q15+"<br/>Ans.&nbsp;"+R15+"<br/>"+A15+"<br/>"+
            "Q16.&nbsp;"+Q16+"<br/>Ans.&nbsp;"+R16+"<br/>"+A16+"<br/>"+
            "Q17.&nbsp;"+Q17+"<br/>Ans.&nbsp;"+R17+"<br/>"+A17+"<br/>"+
            "Q18.&nbsp;"+Q18+"<br/>Ans.&nbsp;"+R18+"<br/>"+A18+"<br/>"+
            "Q19.&nbsp;"+Q19+"<br/>Ans.&nbsp;"+R19+"<br/>"+A19+"<br/>"+
            "Q20.&nbsp;"+Q20+"<br/>Ans.&nbsp;"+R20+"<br/>"+A20+"<br/>"+
            "Q21.&nbsp;"+Q21+"<br/>Ans.&nbsp;"+R21+"<br/>"+A21+"<br/>"+
            "Q22.&nbsp;"+Q22+"<br/>Ans.&nbsp;"+R22+"<br/>"+A22+"<br/>"+
            "Q23.&nbsp;"+Q23+"<br/>Ans.&nbsp;"+R23+"<br/>"+A23+"<br/>"+
            "Q24.&nbsp;"+Q24+"<br/>Ans.&nbsp;"+R24+"<br/>"+A24+"<br/>"+
            "Q25.&nbsp;"+Q25+"<br/>Ans.&nbsp;"+R25+"<br/>"+A25+"<br/>")
        p = Paragraph(text, style=self.styles["Normal"])
        p.wrapOn(self.c, self.width-self.soffset_1*2, self.height)
        p.drawOn(self.c, self.soffset_1,40)            
        self.c.showPage()

0 个答案:

没有答案