python-docx文档样式字体未通过标题样式

问题描述 投票:0回答:1

我在我的django项目中使用python-docx到MS-word报告,我成功修改了Normal内容样式,我有'宋体'字体:

            document.styles['Normal'].font.name = u'宋体'
            report.styles['Normal']._element.rPr.rFonts.set(qn('w:eastAsia'), u'宋体')
            document.styles['Normal'].font.size = Pt(9)

但是当我将它用于标题内容时,标题字体没有改变。没有任何失败的节目。很明显,标题大小已经改变。为什么会这样,怎么解决这个问题?

            document.add_paragraph('1.清单', 'Heading 1')
            document.add_paragraph('设备:', 'Heading 2')

            document.styles['Heading 1'].font.name = u'宋体'
            document.styles['Heading 1']._element.rPr.rFonts.set(qn('w:eastAsia'), u'宋体')
            document.styles['Heading 1'].font.size = Pt(12)
            document.styles['Heading 2'].font.name = u'宋体'
            document.styles['Heading 2']._element.rPr.rFonts.set(qn('w:eastAsia'), u'宋体')
            document.styles['Heading 2'].font.size = Pt(10.5)

我想知道如何分别修改中文和英文字体? 谢谢!

python django python-docx
1个回答
0
投票

我用了一个简单的解决方案,创造了一种新的风格

            style_T1 = report.styles.add_style('T1', WD_STYLE_TYPE.PARAGRAPH)
            style_T1.paragraph_format.alignment = WD_PARAGRAPH_ALIGNMENT.CENTER

有效!所以我创造了几种风格,取而代之的是“标题1”,“标题2”......

© www.soinside.com 2019 - 2024. All rights reserved.