在 ReportLab 中,表格单元格的内容默认不会自动换行。但是,可以使用 wrapOn 方法来实现表格单元格内容的自动换行,例如:
table = Table(data, colWidths=widths) table.setStyle(TableStyle([ ('BACKGROUND', (0, 0), (-1, 0), colors.grey), ('TEXTCOLOR', (0, 0), (-1, 0), colors.whitesmoke), ('ALIGN', (0, 0), (-1, -1), 'CENTER'), ('FONTNAME', (0, 0), (-1, 0), 'Helvetica-Bold'), ('BOTTOMPADDING', (0, 0), (-1, 0), 12), ('BACKGROUND', (0, 1), (-1, -1), colors.beige), ('GRID', (0, 1), (-1, -1), 1, colors.black) table.wrapOn(pdf_canvas, width, height) table.drawOn(pdf_canvas, *coord(pdf_canvas, x, y, units))
这里,colWidths 参数表示列宽度,wrapOn 方法的第一个参数 pdf_canvas 表示图像对象,第二个参数 width 表示单元格的宽度,第三个参数 height 表示单元格的高度。