zoukankan      html  css  js  c++  java
  • python-pptx 实践 2 :添加文本框、设置字体、行距、实现自动换行

    说明:

      python-pptx 写入文本,如果没有换行符,默认是一行。要实现自动换行的效果,应该在适当的地方插入换行符。

    代码:

    # 加载库
    import  os
    from pptx import Presentation
    from pptx.util import Cm, Pt
    from pptx.enum.text import PP_ALIGN
    
    # 设置路径 work_path = r'E:pyspace mppptx' os.chdir(work_path) # 实例化 ppt 文档对象 prs = Presentation() # 插入幻灯片 blank_slide = prs.slide_layouts[6] slide_1 = prs.slides.add_slide(blank_slide) # 预设位置及大小 left = top = Cm(1) # left,top为相对位置 width = Cm(20) # width,height为文本框的大小 height = Cm(10) # 在指定位置添加文本框 textbox = slide_1.shapes.add_textbox(left, top, width, height) tf = textbox.text_frame # 在文本框中写入文字 ## 题目 para = tf.add_paragraph() # 新增段落 para.text = '我侬词' # 向段落写入文字 para.alignment = PP_ALIGN.CENTER # 居中 para.line_spacing = 1.5 # 1.5 倍的行距 ### 设置字体 font = para.font font.name = '微软雅黑' # 字体类型 font.bold = True # 加粗 font.size = Pt(32) # 大小 ## 作者 new_para = tf.add_paragraph() # 添加段落 new_para.text = ' 元 · 管道昇 ' # 段落文字 new_para.alignment = PP_ALIGN.CENTER # 居中 new_para.line_spacing = 1.5 # 1.5 倍的行距 ### 设置字体 font = new_para.font font.name = '微软雅黑' # 字体类型 font.size = Pt(18) # 大小 font.underline = False # 下划线 ## 分三行写入正文 ### 正文文本 s ='你侬我侬,忒煞情多;情多处,热如火;把一块泥,捻一个你,塑一个我,将咱两个一齐打碎,用水调和; 再捻一个你,再塑一个我。我泥中有你,你泥中有我;我与你生同一个衾,死同一个椁。' d = len(s)//3 + 1 ts = list(s) for i in range(3): ts.insert((i+1)*d - 2 + i, ' ') # 插入换行符 s = ''.join(ts) ### 写入正文 new_para = tf.add_paragraph() # 添加段落 new_para.text = s new_para.line_spacing = 1.5 # 1.5 倍的行距 # 保存 ppt prs.save('test.pptx')

    效果:

     

  • 相关阅读:
    Hacker's guide to Neural Networks
    Backbone Collection 源码简谈
    Backbone Model 源码简谈 (版本:1.1.0 基础部分完毕)
    Android系统架构概述
    关于 Android 程序员最近的状况
    调查:周末iPhone用户喜欢出去玩 Android喜欢宅家看电影/看书
    调查:周末iPhone用户喜欢出去玩 Android喜欢宅家看电影/看书
    Android进阶必学retrofit源码解析
    Android进阶必学retrofit源码解析
    移动互联网资料图
  • 原文地址:https://www.cnblogs.com/shanger/p/13098558.html
Copyright © 2011-2022 走看看