1、打开一个doc文档
from docx import Document doc = Document(file_path)
2、新建一个doc文档
3、设置doc文档格式
doc.styles['Normal'].font.name = u'Times New Roman' doc.styles['Normal']._element.rPr.rFonts.set(qn('w:eastAsia'), u'宋体') style = doc.styles['Normal'] paragraph_format = style.paragraph_format paragraph_format.first_line_indent = Cm(0.74) # 设置1级标题的字体为Times New Roman, 且无缩进 # 这种写法只能够修改Normal样式的字体,修改标题的字体无效。 style_heading1 = doc.styles['Heading 1'] style_heading1.font.name = u'Times New Roman' heading1_format = style_heading1.paragraph_format heading1_format.first_line_indent = Cm(0) # 设置2级标题的字体为Times New Roman, 且无缩进 style_heading2 = doc.styles['Heading 2'] style_heading2.font.name = 'Times New Roman' heading2_format = style_heading2.paragraph_format heading2_format.first_line_indent = Cm(0)
4、向docx文档写入内容
doc.add_heading(dashboard, 1) doc.add_heading(visualization, 2) doc.add_paragraph('该visualization的类型为' + visualization_type + ',其作用是' + description + '。其界面如下图所示:', style='Body Text') doc.add_picture(pic_path, width=Inches(4)) last_paragraph = doc.paragraphs[-1] last_paragraph.alignment = WD_ALIGN_PARAGRAPH.CENTER doc.save('resource/output.docx')
2、获取 paragraph的内容, doc.paragrashs是一个列表,遍历列表分别获取每一个段落的内容:
for j, paragraph in enumerate(doc.paragraphs): para_text = paragraph.text
标题也属于doc.paragrashs列表。
判断某个段落是否是标题:
paragraph.style.name == 'Heading 3'
|