文档很难看懂,直接用例子来理解一些基本操作
from docx import Document from docx.shared import Inches from docx.shared import Pt from docx.shared import RGBColor from docx.oxml.ns import qn doc = Document() # 全文设置 # Normal指的是正文部分,还有很多其他选项如标题、表格、列表等,可遍历doc.styles进行查看 # 设置正文颜色,大小,粗体 doc.styles['Normal'].font.color.rgb = RGBColor(0, 0, 255) doc.styles['Normal'].font.size = Pt(12) doc.styles['Normal'].font.bold = True # 设置全文字体 doc.styles['Normal'].font.name = u'宋体' # 对于中文字体必须加这一句 doc.styles['Normal']._element.rPr.rFonts.set(qn('w:eastAsia'), u'宋体') # 添加标题,0,1,2...表示标题号大到小 doc.add_heading('title1', 0) # 段落设置 # 添加段落p1 p1 = doc.add_paragraph(u'两名老者是武当宋远桥,张松溪,中年夫妇是殷梨亭、杨不悔夫妇') # p1.paragraph_format段落格式,有多个项目可以设置,包括缩进,对齐,行距等 # 参考:https://python-docx.readthedocs.io/en/latest/api/text.html#docx.text.parfmt.ParagraphFormat # 首行缩进0.5英寸 p1.paragraph_format.first_line_indent = Inches(0.5) # 这个方法会修改所有段落,而不单单是p1段落,和doc.styles['Normal'].font.color.rgb作用一样,不用! # p1.style.font.color.rgb = RGBColor(0, 255, 0) # 插入一个分页符 doc.add_page_break() # 再添加个段落p2 p2 = doc.add_paragraph('abcde') # 往p2添加新的文字,并设置字体,可进行多种格式设置 run = p2.add_run(u'添加的文字') run.font.size = Pt(24) run.italic = True # 继续添加文字,在添加文字时直接设置字体,此方法只能进行一种格式设置 p2.add_run(u'取消粗体').bold = False p2.add_run(u'设置斜体').italic = True p2.add_run(u'字体再大点').font.size = Pt(36) # 插入一个分页符 doc.add_page_break() # 添加一段落,设置为红色文字,9px,斜体,楷体,非粗体,缩进18px # 用add_paragraph('XXXXX')先添加文字后,再修改已添加的文字格式比较困难 # 可以先用add_paragraph()添加个空段落,然后使用add_run()添加文字,通过run对象进行格式设置 p3 = doc.add_paragraph() run = p3.add_run(u'添加一段落,设置为红色文字,9px,斜体,楷体,非粗体,缩进18px') run.font.size = Pt(9) run.font.color.rgb = RGBColor(255, 0, 0) run.font.name = u'楷体' run._element.rPr.rFonts.set(qn('w:eastAsia'), u'楷体') run.italic = True run.bold = False p3.paragraph_format.first_line_indent = Pt(18) # 保存文档 doc.save('python-docx.docx')