m0_73463911 2022-10-05 14:37 采纳率: 0%
浏览 101
已结题

如何用模板生成word文档

    我现在有个需求,📌需要在不同的项目中提交项目报告📌,报告大部分内容是一样的,小部分内容需要根据委托方的情况填写。
     现在想找个工具✌,或者写个小程序,能实现这个功能。
     各位大神谢谢了🙏!
  • 写回答

5条回答 默认 最新

  • 来灵 2022-10-05 16:05
    关注

    可以用python写个程序,来生成和操作word文档,生成对应的word模板文件
    前提:安装python以及python-docx 三方库
    三方库安装命令如下

    pip install python-docx
    

    python生成word模板代码如下,仅供参考

    from docx import Document
    
    # docx.shared 用于设置大小(图片等)
    from docx.shared import Cm, Pt
    from docx.document import Document as Doc
    
    # 创建代表Word文档的Doc对象
    document = Document()
    
    # type: Doc # 添加大标
    document.add_heading('XXX项目报告', 0)
    
    # 添加段落
    p = document.add_paragraph('基本信息')
    run = p.add_run('信息来源')
    run.bold = True 
    run.font.size = Pt(18)
    p.add_run('申请报告')
    run = p.add_run('非常棒')
    run.font.size = Pt(18)
    run.underline = False
    p.add_run('。')
    
    # 添加一级标题
    document.add_heading('Heading, level 1', level=1)
    
    # 添加带样式的段落
    document.add_paragraph('申报要点1', style='Intense Quote')
    
    # 添加无序列表
    document.add_paragraph(
    '申报要点2', style='List Bullet'
    )
    
    document.add_paragraph(
    '申报要点3', style='List Bullet'
    )
    
    # 添加有序列表
    document.add_paragraph(
    '申报要点4', style='List Number'
    )
    
    document.add_paragraph(
    '申报要点5', style='List Number'
    )
    
    # 添加图片(注意路径和图片必须要存在)
    document.add_picture('test.png', width=Cm(5.2))
    
    # 添加分节符
    document.add_section()
    
    records = (
    ('大型项目', '1亿元以上'),
    ('中型项目', '1000万元以上'),
    ('小型项目', '1000万元以下'),
    )
    
    # 添加表格
    table = document.add_table(rows=1, cols=3)
    table.style = 'Dark List'
    hdr_cells = table.rows[0].cells
    hdr_cells[0].text = '项目规模 '
    hdr_cells[1].text = '项目金额'
    
    # 为表格添加行 
    for type, money in records:
         row_cells = table.add_row().cells
         row_cells[0].text = type
         row_cells[1].text = money
    
    # 添加分页符
    document.add_page_break()
    
    # 保存文档
    document.save('demo.docx')
    

    以上代码用VS code运行,生成的word模板截图

    img

    评论

报告相同问题?

问题事件

  • 系统已结题 10月13日
  • 创建了问题 10月5日

悬赏问题

  • ¥200 相机拍直接转存到电脑上 立拍立穿无线局域网传
  • ¥15 (关键词-电路设计)
  • ¥15 如何解决MIPS计算是否溢出
  • ¥15 vue中我代理了iframe,iframe却走的是路由,没有显示该显示的网站,这个该如何处理
  • ¥15 操作系统相关算法中while();的含义
  • ¥15 CNVcaller安装后无法找到文件
  • ¥15 visual studio2022中文乱码无法解决
  • ¥15 关于华为5g模块mh5000-31接线问题
  • ¥15 keil L6007U报错
  • ¥15 webapi 发布到iis后无法访问