Как установить направление текста для ячейки TextTable в OpenOffice? - PullRequest
1 голос
/ 22 мая 2009

Я хочу установить направление текста для некоторых ячеек в TextTable так, чтобы они были вертикальными (то есть текст был горизонтальным, а не книжным). Вы можете сделать это в Writer, выбрав ячейки и перейдя к: Таблица - Свойства текста - Поток текста - Направление текста

Однако я не могу понять, как это сделать через API. Я попытался использовать CharRotation, но он не ведет себя правильно. CharRotation просто берет текст и вращает его (без настройки какого-либо форматирования). Текст, с которым я имею дело, отформатирован символами табуляции и работает неправильно при повороте.

1 Ответ

0 голосов
/ 03 ноября 2009

Я наконец понял это после всех этих месяцев!

Вы должны установить свойство WritingMode для ячейки. В C #:

XCell cell = table.getCellByName(cellName);
((XPropertySet)cell).setPropertyValue("WritingMode", new Any((short) 
WritingMode.TB_RL));

Я еще не пробовал это в python, но я полагаю, это будет примерно так:

cell = table.getCellByName(cellName)
cell.WritingMode = 2

Если вы используете статически типизированный язык, обязательно приведите его к короткому. Выполнение typeof(WritingMode) не будет работать по какой-то странной причине.

См. эту проблему в трекере ошибок OOo.

...