Шаг 4.
Вкладка Servers. Компонент TWordApplication (часть 3)

    На этом шаге мы продолжаем рассматривать свойства компонента TWordApplication.

    Приведем небольшие коды-примеры, иллюстрирующие другие свойства и помогающие работать с данным компонентом

WordApplication1.ActiveDocument.Shapes.AddShape(Type:Integer ,3.3, 788.00, 600.00, 
 42.10, EmptyParam).Select(EmptyParam);

где Type – число, соответствующее типу рисуемой фигуры, например, 1 – прямоугольник, 4 – ромб; 788.00 и 3.3 координаты верхнего левого угла; 600.00 и 42.00 ширина и высота соответственно координаты и остальные параметры не в миллиметрах.

// Цвет заливки белый. 
WordApplication1.Selection.ShapeRange.Fill.ForeColor.RGB:=$FFFFFF;
 // Цвет линий черный.
WordApplication1.Selection.ShapeRange.Line.ForeColor.RGB:=$000000;
WordApplication1.ActiveDocument.Shapes.AddLine(x1,y1,x2,y2,EmptyParam);

где первые два параметра X,Y - начала линии, вторые два параметра X,Y - конца линии, последний так и ставьте, обозначает тип линии (пунктир и т.д.)

    На основе этих нескольких свойств создадим приложение, позволяющее осуществлять графические вставки в документ Word и форматировать вставляемые изображения: на форме расположим компонент TWordApplication, 4 кнопки TButton и 3 компонента TRadioGroup.

    Результат приложения можно увидеть на рисунке


Рис.1. Работа с графическими изображениями

    Текст этого примера можно взять здесь.

// Книжная ориентация.
WordApplication1.ActiveDocument.PageSetup.Orientation:=wdOrientPortrait;
 // Поля.
WordApplication1.Selection.PageSetup.LeftMargin:=72.0; //~2.5 см
WordApplication1.ActiveDocument.Paragraphs.Add(EmptyParam);
Этот же код можно применять для вставки текста после таблицы.
// Переходим на нижний колонтитул.
WordApplication1.ActiveWindow.ActivePane.View.SeekView:=wdSeekCurrentPageFooter;
// Вставляем текст.
WordApplication1.Selection.InsertAfter('Текст');
// Снимаем выделение.
WordApplication1.Selection.Collapse(D);
// Переходим с колонтитула на документ.
WordApplication1.ActiveWindow.ActivePane.View.SeekView:=wdSeekMainDocument;
    Колонтитулы бывают верхний/нижний, а также, если вставляется новый раздел на новой странице, то можно установить верхний N раздел/нижний N раздел, дополнительная опция - "как в предыдущем разделе".     После вставки таблицы курсор будет находиться в ней. И обычные попытки вставить текст приведут к тому, что он будет вставляться в первую ячейку таблицы. Существует множество вариантов выхода из таблицы, например, такой:
Con:=7;
// Перемещаем курсор из таблицы. 
WordApplication1.Selection.MoveDown(EmptyParam,Con,EmptyParam);
// Вставляем текст.
WordApplication1.Selection.InsertAfter('текст '+#13);
// Снимаем выделение.
WordApplication1.Selection.Collapse(D);
WordApplication1.Selection.InsertFile(Filename,emptyparam,emptyparam,emptyparam,
 emptyparam);

    На следующем шаге мы продолжим рассматривать свойства компонента TWordApplication.




Предыдущий шаг Содержание Следующий шаг