在 `python-docx` 中排版姓名可以通过以下步骤实现,结合了样式设置和段落格式调整:
一、使用内置样式
添加标题样式
使用 `add_heading` 方法为姓名添加标题样式,可快速设置字体、字号和颜色。例如:
```python
from docx import Document
doc = Document()
doc.add_heading('张三', level=1) 一级标题
doc.add_heading('李四', level=2) 二级标题
```
通过调整 `level` 参数,可以灵活控制标题层级。
应用段落格式
通过 `paragraph.style` 属性应用预定义样式,或自定义样式。例如:
```python
from docx.shared import Pt, RGBColor
添加普通段落并应用样式
p = doc.add_paragraph('王五', style='Heading 2')
run = p.add_run('技术总监')
run.font.size = Pt(16)
run.font.bold = True
run.font.color.rgb = RGBColor(0, 0, 0) 黑色字体
```
二、自定义排版
调整字体与字号
直接设置字体、字号和加粗等属性。例如:
```python
run.font.name = 'Arial'
run.font.size = Pt(24)
run.font.bold = True
```
对齐与间距
使用 `alignment` 属性调整对齐方式(左对齐/居中/右对齐),并设置段前/段后间距:
```python
p.alignment = WD_ALIGN_PARAGRAPH.CENTER
p.paragraph_format.left_margin = Inches(1.5)
p.paragraph_format.right_margin = Inches(1.5)
```
图文混排
添加图片并设置其位置和大小。例如:
```python
from docx.shared import Inches
doc.add_picture('logo.png', width=Inches(2.0))
p = doc.add_paragraph('技术团队')
p.add_run('由张三、李四、王五组成')
p.add_run('(左对齐,图片右侧)')
```
三、完整示例
```python
from docx import Document
from docx.shared import Pt, RGBColor, Inches, WD_ALIGN_PARAGRAPH
创建文档
doc = Document()
添加公司信息
doc.add_heading('智能文档生成系统', level=0)
p = doc.add_paragraph('由张三(技术总监)主导开发', style='Heading 2')
p.font.size = Pt(18)
p.font.bold = True
p.alignment = WD_ALIGN_PARAGRAPH.CENTER
p.add_run('团队成员:李四(产品经理)、王五(开发工程师)')
添加图片
doc.add_picture('logo.png', width=Inches(2.0))
添加表格
table = doc.add_table(rows=2, cols=2, style='Table Grid')
table.cell(0, 0).text = '功能模块'
table.cell(0, 1).text = '负责人'
for i in range(1, 3):
table.cell(i, 0).text = f'模块{i}'
table.cell(i, 1).text = f'张三、李四'
保存文档
doc.save('name_alignment.docx')
```
通过以上方法,可以灵活控制姓名的排版效果,满足不同场景需求。