一个段落里如何使用Reportlab加粗和正常字体?

4
我正在使用reportlab(与Django一起)创建PDF。我已经创建了以下代码来创建包含标题和详细信息的表格:
elements = []
datas = []
course_info = [
               ['Course Code' , c.course_code] ,
               ['Course Title' , c.course_name],
               ['Prerequisites by Course(s) and Topics', c.pre_reqs],
               ['Assessment Instruments with Weights (some desc)', c.grade_distribution]
            ]

for k in course_info: 
    headpara = Paragraph(k[0], styleB)

    datas.append([headpara , Paragraph(clean_string(k[1]), styleN)])

t = LongTable(datas, colWidths=[5 * cm, 12 * cm])

t.setStyle(TableStyle(org.getTableStyle()))
elements.append(t)
doc.build(elements)

我正在使用BaseDocTemplate作为我的模板。我想要的是能够将headpara的一部分设为非粗体,例如第四行中(some desc)部分需要是正常样式而不是粗体。我该如何实现这个目标?
1个回答

8
Reportlab支持简单的HTML格式化,因此我们可以使用styleN并使所需文本加粗。就像这样:
course_info = [
               ['<b>Course Code</b>' , c.course_code] ,
               ['<b>Course Title</b>' , c.course_name],
               ['<b>Prerequisites by Course(s) and Topics</b>', c.pre_reqs],
               ['<b>Assessment Instruments with Weights</b> (some desc)', c.grade_distribution]
            ]

for k in course_info: 
    headpara = Paragraph(k[0], styleN) 
    datas.append([headpara , Paragraph(clean_string(k[1]), styleN)])

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接