你好,
通过spire.doc建立的目录,怎么更改其paragraphs下的目录文本的字体格式?
static void Main(string[] args)
{
Document doc = new Document();
doc.LoadFromFile("目录.docx");
foreach (Section section in doc.Sections)
{
//遍历body下面所有对象
foreach (DocumentObject obj in section.Body.ChildObjects)
{
if (obj is Paragraph)
{
Paragraph para = obj as Paragraph;
//通过样式名来确定是否是目录文本
switch(para.StyleName){
//一级标题
case "TOC1":
ChangeFont(para, "黑体", 14);
break;
//二级标题
case "TOC2":
ChangeFont(para, "黑体", 12);
break;
//三级标题
case "TOC3":
ChangeFont(para, "黑体", 10);
break;
//其余级别类推
}
}
}
}
doc.SaveToFile("结果.docx", FileFormat.Docx);
}
public static void ChangeFont(Paragraph para, string fontName, int fontSize)
{
foreach (DocumentObject obj in para.ChildObjects)
{
//如果对象类型为TextRange
if (obj.DocumentObjectType == DocumentObjectType.TextRange)
{
TextRange tr = (TextRange)obj;
//更改字体和文字大小
tr.CharacterFormat.FontName = fontName;
tr.CharacterFormat.FontSize = fontSize;
}
}
}