1

我想为段落添加样式,但根据单词语言版本,我必须使用不同的名称。现在我正在为多个用户创建一个应用程序,如果他们有英文版本,我可以使用“Header 1”,但如果他们没有,则无法识别样式。我想知道我应该怎么做,我应该添加一个新样式吗?我一直在研究这个,但我不知道怎么做。

所以在我的荷兰语版本中,我使用:

selection.TypeParagraph();
object kop1 = "Kop1";
selection.set_Style(kop1);
selection.TypeText("test");

但我需要英语:

selection.TypeParagraph();
object kop1 = "Header 1";
selection.set_Style(kop1);
selection.TypeText("test");

我实际上需要这个来创建一个内容表,如果我不使用样式,我就无法创建一个内容表,对吧?否则我的内容表说它没有内容。

我使用以下方法制作内容表:

object start = adoc.Content.End - 1;
Range rangeForTOC = adoc.Range(ref start, ref missing);
TableOfContents toc = adoc.TablesOfContents.Add(rangeForTOC, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing);
adoc.TablesOfContents[1].TabLeader = WdTabLeader.wdTabLeaderDots;
adoc.TablesOfContents.Format = WdTocFormat.wdTOCClassic;
toc.Update();

有任何想法吗?

4

2 回答 2

4

您可能希望使用 Word.WdBuiltinStyle 枚举而不是特定于语言的字符串。例如,在上面的代码中使用 Word.WdBuiltinStyle.wdStyleHeading1。

解决此问题的另一种方法是添加您自己的模板并使用该模板中定义的样式。在这种情况下,您在您的发行版中提供您的模板。

要使用预定义的表格生成样式,另请参阅此答案:在代码中设置 Word 2007 表格样式设计

于 2012-03-11T23:37:33.137 回答
1

一方面,我会使用DocX(没有 Com)

是有关样式的信息。

于 2012-03-11T23:15:11.157 回答