我需要帮助,使用word interop和c#在一个word文档中添加制表位(1cm位置)。这是我已经尝试过的。
Range range = paragraph.Range;
int firstTabStart = range .Start;
range .SetRange(firstTabStart, firstTabStart);
range .Paragraphs.TabStops.Add(5, WdTabAlignment.wdAlignTabRight);
当我打开我的word文档时,我看不到任何标签停止。 但是我可以使用
插入制表符对齐range .InsertAlignmentTab((int)WdAlignmentTabAlignment.wdCenter,
(int)WdAlignmentTabRelative.wdMargin);
虽然这些标签是绝对的,我无法在word文档中编辑它们。
请帮忙。
答案 0 :(得分:2)
我无法重现您遇到的问题,但我正在粘贴我测试过的代码,因此您可以查看它是否与现有代码有任何不同。
我看到制表位出现在标尺1和1处。每种情况下2厘米:
paragraphs.TabStops
代替range.Paragraphs.TabStops
WdTabLeader
方法中传递TabStops.Add
的第三个参数。这是在Word 2010中完成的
class Start
{
public static void Main()
{
// Open a doc file.
Application application = new Application();
Document document = application.Documents.Open(@"C:\Users\mmonkan\Documents\word.docx");
Paragraphs paragraphs = document.Paragraphs;
Paragraph paragraph = paragraphs[1];
Range range = paragraph.Range;
range.SetRange(0, 0);
range.Paragraphs.TabStops.Add(28, WdTabAlignment.wdAlignTabRight);
range.Paragraphs.TabStops.Add(56, WdTabAlignment.wdAlignTabRight);
// Close word.
application.Quit(WdSaveOptions.wdSaveChanges);
Console.ReadLine();
}
}