Добавление трех выровненных изображений в нижний колонтитул текстового документа

Я использую Word Automation для создания документа из своего приложения, и мне нужно добавить три подписи в нижний колонтитул документа. Это легко, однако, заставить их появляться так, как мне хотелось бы, не работает.

Вот код, который я использую:

            //add initials to footer
            if (oWordDoc.Sections.Count > 0) {
                Range r = oWordDoc.Sections[1].Footers[WdHeaderFooterIndex.wdHeaderFooterPrimary].Range;
                Object colapseDir = WdCollapseDirection.wdCollapseStart;
                r.Collapse(ref colapseDir);

                oWord.ActiveWindow.View.Type = WdViewType.wdPrintView;
                oWord.ActiveWindow.ActivePane.View.SeekView = WdSeekView.wdSeekCurrentPageFooter;
                oWord.Selection.TypeParagraph();

                oWord.Selection.Paragraphs.Alignment = WdParagraphAlignment.wdAlignParagraphLeft;
                oWord.ActiveWindow.Selection.Font.Name = "Arial";
                oWord.ActiveWindow.Selection.Font.Size = 8;


                if (!String.IsNullOrEmpty(plaintiffInitialFile)) {
                    r.InlineShapes.AddPicture(plaintiffInitialFile, ref oMissing, ref oTrue, ref oMissing);
                }

                oWord.ActiveWindow.Selection.TypeText("Plaintiff's Initals");
                oWord.ActiveWindow.Selection.TypeText("\t");


                if (!String.IsNullOrEmpty(plaintiffAttInitialFile)) {
                    r.InlineShapes.AddPicture(plaintiffAttInitialFile, ref oMissing, ref oTrue, ref oMissing);
                }

                oWord.ActiveWindow.Selection.TypeText("Plaintiff's Attorney's Initals");
                oWord.ActiveWindow.Selection.TypeText("\t");


                if (!String.IsNullOrEmpty(ekfgInitialFile)) {
                    r.InlineShapes.AddPicture(ekfgInitialFile, ref oMissing, ref oTrue, ref oMissing);
                }

                oWord.ActiveWindow.Selection.TypeText("EKFG's Initals");
            }

Вот что он производит (я добавил аннотации)Результаты

Вот что я хочуЖелаемый ответ

Что мне нужно сделать?

1 ответ

Решение

Мне удалось решить проблему, если кто-то столкнется с этой проблемой. Я следовал инструкциям здесь: http://support.microsoft.com/kb/316384 чтобы создать одну строку, таблицу из шести столбцов.

Если кто-то пытается это сделать, не забывайте, что автоматизация слов по сути является Visual Basic, поэтому при обращении к ячейкам таблицы индексы начинаются с 1, а не с 0.

Добавление текста работает как в примере:

oTable.Cell(1, 2).Range.Text = "Plaintiff's Initials";

и добавление изображений работает так же, как и раньше, за исключением того, что в этот раз диапазон является вашей ячейкой

oTable.Cell(1, 1).Range.InlineShapes.AddPicture(plaintiffInitialFile, ref oMissing, ref oTrue, ref oMissing);
Другие вопросы по тегам