C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Создание формулы в Ворде, через Билдер
laifik
  Отправлено: 30.09.2005, 13:09


Дежурный стрелочник

Группа: Участник
Сообщений: 70



Есть такой макрос:
CODE
Sub Macro1()
Selection.InlineShapes.AddOLEObject ClassType:="Equation.3", FileName:="", _
LinkToFile:=False, DisplayAsIcon:=False
SendKeys "GT = K1 x Vc2"
End Sub

С помощью редактора формул в документе создается формула.
У меня два вопроса:
1) Как произвести форматирование текста формулы: 1 перевести в нижний регистр, 2 — возвести в степень и т.п.?
2) Как текст макроса будет выглядеть на языке Билдера?
Этот вопрос дважды поднимался на форумах, но ответа так и нет. Может это нереально? ohmy.gif

Отредактировано laifik — 30/09/2005, 13:10
laifik
Отправлено: 01.10.2005, 11:07


Дежурный стрелочник

Группа: Участник
Сообщений: 70



Как это водится, сама себе и отвечаю. А может кому и пригодится.
Я догадалась, как работать в редакторе формул.
Мне эту задачу нужно было решить через С++ Билдер.
Внимательно поработала с самим Вордом. Оказывается, созданную формулу можно записать в файл с расширением .doc. Мне это никогда не было нужно, и на эту возможность я не обратила внимание.
А далее указать путь к этому файлу. Формула вставится туда, где находится текущее положение курсора.
Другого варианта нарисовать формулу с помощью Equation.3, видимо, нет. Этот работает.
CODE
OleVariant ClassType, FileName;
ClassType = AnsiString("Equation.3");
FileName = AnsiString("C:\\Program Files\\Borland\\CBuilder6\\Projects\\Formula1.doc");
WordApp->Selection->InlineShapes->AddOLEObject(ClassType, FileName, EmptyParam,
EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam);


Отредактировано laifik — 01/10/2005, 11:08

Вернуться в Вопросы программирования в C++Builder