Курсовая работа: Delphi: работа с MS WORD
for j:=0 to ilengy-8 do begin
a:=j;
b:=j+7;
if WordDocument1.Range(a,b).Text='picture' then begin
vstart:=j;
vend:=j+7;
end;
end;
WordDocument1.Range(vstart,vend).Select;
Такая процедура находит и выделяет нужный кусок текста.
Теперь про Selection, представляющий из себя выделенный фрагмент документа. Если выделения нет, это текущая позиция курсора в документе. С его помощью можем вставить что-либо на место выделенного фрагмента, сделать выравнивание, изменить шрифт. Онтакжеимеетметоды InsertAfter() и InsertBefore():
WordApplication1.Selection.InsertAfter("text1");
WordApplication1.Selection.InsertBefore("text2");
Форматирование выделенного текста происходит аналогично Range, например:
WordApplication1.Selection.Font.Bold:=1;
WordApplication1.Selection.Font.Size:=16;
WordApplication1.Selection.Font.Color:=clGreen;
Для выравнивания проще воспользоваться компонентом WordParagraphFormat. Сначала только нужно "подключить" его к выделенному фрагменту текста:
WordParagraphFormat1.ConnectTo(WordApplication1.Selection.ParagraphFormat);
WordParagraphFormat1.Alignment:=wdAlignParagraphCenter;
Значения его свойства Alignment может принимать значения wdAlignParagraphCenter, wdAlignParagraphLeft, wdAlignParagraphRight, смысл которых очевиден. Имеются и методы Cut, Copy и Paste, которые в пояснениях вряд ли нуждаются:
WordApplication1.Selection.Cut;
WordApplication1.Selection.Copy;
WordApplication1.Selection.Paste;
УбираемвыделениеспомощьюметодаCollapse. При этом необходимо указать, в какую сторону сместится курсор, будет ли он до ранее выделенного фрагмента или после:
var vcol: OleVariant;
...
vcol:=wdCollapseStart;
WordApplication1.Selection.Collapse(vcol);