AText

Описание некоторых функций для работы с текстом:


getCurrentController()

Метод интерфейса XModel Предоставляет доступ к контроллеру, который в данный момент управляет этой моделью. Если активный контроллер является контроллером этой модели, он будет возвращен. Если нет, возвращается последний активный контроллер этой модели. Если ни один контроллер этой модели никогда не был активен, возвращается первый зарегистрированный контроллер. Если для этой модели не зарегистрирован контроллер, возвращается NULL.


createTextCursorByRange(TextPosition)


Метод интерфейса XSimpleText Начальная позиция устанавливается в TextPosition. Создает новый экземпляра курсора, расположенного в указанном текстовом диапазоне, для перемещения в данном текстовом контексте


isStartOfWord()


Метод интерфейса XWordCursor Определяет, стоит ли курсор в начале слова.


isEndOfWord()


Метод интерфейса XWordCursor Определяет, стоит ли курсор в конце слова.


gotoStartOfWord()


Метод интерфейса XWordCursor Перемещает курсор в начало текущего слова. Возвращает TRUE, если курсор находится в начале слова, в противном случае FALSE . Если было возвращено FALSE, курсор останется в исходной позиции.


gotoNextWord()


Метод интерфейса XWordCursor Перемещает курсор к следующему слову. Примечание: функция, возвращающая TRUE, не обязательно означает, что курсор находится на следующем слове или вообще на любом слове! Это может произойти, например, если он перемещается по пустым абзацам. Возвращает TRUE, если курсор был перемещен. Возвращает FALSE, если курсор не может двигаться дальше.


gotoEndOfWord()


Метод интерфейса XWordCursor Перемещает курсор в конец текущего слова. Возвращает TRUE, если курсор находится в конце слова, иначе FALSE. Если было возвращено FALSE, курсор останется в исходной позиции.


Примеры:


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

oDoc = XSCRIPTCONTEXT.getDocument();
xTextDoc = UnoRuntime.queryInterface(XTextDocument,oDoc);
xText = xTextDoc.getText();
xTextRange = xText.getEnd();
xTextRange.setString("Hello World (in JavaScript/Atext)");

Изменение размера шрифта:

oDoc = XSCRIPTCONTEXT.getDocument()
xTextDoc = UnoRuntime.queryInterface(XTextDocument,oDoc)
xText = xTextDoc.getText()
xTextRange = xText.getEnd()
pv = UnoRuntime.queryInterface(XPropertySet, xTextRange)

pv.setPropertyValue("CharHeight", 32.0)
xTextRange.setString("Hello World (in JavaScript/Atext)")

Изменение цвета (background):

oDoc = XSCRIPTCONTEXT.getDocument()
xTextDoc = UnoRuntime.queryInterface(XTextDocument,oDoc)
xText = xTextDoc.getText()
xTextRange = xText.getEnd()
pv = UnoRuntime.queryInterface(XPropertySet, xTextRange)

pv.setPropertyValue("CharBackColor", new java.lang.Integer(1234567))
pv.setPropertyValue("CharUnderline",
  new java.lang.Short(Packages.com.sun.star.awt.FontUnderline.WAVE))
pv.setPropertyValue("CharPosture", Packages.com.sun.star.awt.FontSlant.ITALIC)
xTextRange.setString("Hello World (in JavaScript/Atext)")

Замена букв/слов:

oDoc = XSCRIPTCONTEXT.getDocument();
xTextDoc = UnoRuntime.queryInterface(XTextDocument, oDoc);
xText = xTextDoc.getText();

xTextRange_0 = xText.getEnd();
xTextRange_1 = xText.getEnd();

jString_0 = "Hello World (in JavaScript/Atext)\n";
xTextRange_0.setString(jString_0);

jString_1 = jString_0.replace("World", "Mike");
xTextRange_1.setString(jString_1);


Вложения:
Вложения содержат архивы (*.tar) в которых находятся полный код макросов.

Добавление текста - hello_world_atext.tar
Изменение размера шрифта - font_size_change_atext
Изменение цвета (background) - color_change_atext.tar
Замена букв/слов - replace_atext.tar
Прикреплённые файлы
color_change_atext.tar
404kb
font_size_change_atext.tar
404kb
hello_world_atext.tar
404kb
replace_atext.tar
404kb