Python|干货!10分钟,用Python生成图文并茂的PDF报告!( 二 )


        ct.leading = 50             # 行间距
        ct.textColor = colors.green     # 字体颜色
        ct.alignment = 1    # 居中
        ct.bold = True
        # 创建标题对应的段落 , 并且返回
        return Paragraph(title ct)
      
  # 绘制小标题
@staticmethod
    def draw_little_title(title: str):
        # 获取所有样式表
        style = getSampleStyleSheet()
        # 拿到标题样式
        ct = style['Normal'

        # 单独设置样式相关属性
        ct.fontName = 'SimSun'  # 字体名
        ct.fontSize = 15  # 字体大小
        ct.leading = 30  # 行间距
        ct.textColor = colors.red  # 字体颜色
        # 创建标题对应的段落 , 并且返回
        return Paragraph(title ct)

    # 绘制普通段落内容
@staticmethod
    def draw_text(text: str):
        # 获取所有样式表
        style = getSampleStyleSheet()
        # 获取普通样式
        ct = style['Normal'

        ct.fontName = 'SimSun'
        ct.fontSize = 12
        ct.wordWrap = 'CJK'     # 设置自动换行
        ct.alignment = 0        # 左对齐
        ct.firstLineIndent = 32     # 第一行开头空格
        ct.leading = 25
        return Paragraph(text ct)

    # 绘制表格
@staticmethod
    def draw_table(*args):
        # 列宽度
        col_width = 120
        style = [
            ('FONTNAME' (0 0) (-1 -1) 'SimSun')  # 字体
            ('FONTSIZE' (0 0) (-1 0) 12)  # 第一行的字体大小
            ('FONTSIZE' (0 1) (-1 -1) 10)  # 第二行到最后一行的字体大小
            ('BACKGROUND' (0 0) (-1 0) '#d5dae6')  # 设置第一行背景颜色