У меня есть файл «test.docx» с 3 разделами страницы, и каждый раздел не связан с предыдущей страницей. Теперь я хочу иметь возможность устанавливать разные фоновые / водяные знаки для каждого раздела. Я просто не знаю, как выбрать другие 2 раздела (или ... не первый).
Я попробовал это так:
Application nWord = new Application();
object oMissing = System.Reflection.Missing.Value;
object fileName = @"E:\test.docx";
Document nDoc = nWord.Documents.Open(ref fileName, ref
oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref
oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref
oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing);
Shape nShape = null;
for (int i = 0; i < nDoc.Sections.Count; i++)
{
nShape =
nDoc.Sections[i].Headers[Microsoft.Office.Interop.Word.WdHeaderFooterIndex.wdHeaderFooterPrimary].Shapes.AddTextEffect(Microsoft.Office.Core.MsoPresetTextEffect.msoTextEffect1,
"TEXT" + i.ToString(), "Arial", (float)36, Microsoft.Office.Core.MsoTriState.msoTrue,
Microsoft.Office.Core.MsoTriState.msoFalse, 0, 0, ref oMissing);
nShape.Fill.Visible =
Microsoft.Office.Core.MsoTriState.msoTrue;
nShape.Line.Visible =
Microsoft.Office.Core.MsoTriState.msoFalse;
nShape.Fill.Solid();
nShape.Fill.ForeColor.RGB = (Int32)WdColor.wdColorGray20;
nShape.RelativeHorizontalPosition =
WdRelativeHorizontalPosition.wdRelativeHorizontalPositionMargin;
nShape.RelativeVerticalPosition =
WdRelativeVerticalPosition.wdRelativeVerticalPositionMargin;
nShape.Left = (float)WdShapePosition.wdShapeCenter;
nShape.Top = (float)WdShapePosition.wdShapeCenter;
}
nWord.Visible = true;
, но он просто удаляет все 3 водяных знака в первом разделе.
Есть идеи?