Come si imposta la direzione del testo per una cella TextTable in OpenOffice?
-
23-08-2019 - |
Domanda
voglio impostare la direzione del testo per alcune cellule in un TextTable in modo che siano verticale (vale a dire, il testo è il paesaggio anziché verticale). È possibile farlo in Writer selezionando la cella (s), e andando a: Tabella - Proprietà del testo - Flusso di testo - Orientamento testo
Tuttavia, non riesco a capire come fare questo tramite l'API. Ho provato ad utilizzare CharRotation, ma non si comporta nel modo giusto. CharRotation prende semplicemente il testo, e lo ruota (senza regolare alcuna formattazione). Il testo mi occupo è formattato da tabulazioni, e non si comporta correttamente quando viene ruotato in questo modo.
Soluzione
Alla fine ho capito questo dopo tutti questi mesi!
È necessario impostare la proprietà "WritingMode" per la cella. In C #:
XCell cell = table.getCellByName(cellName);
((XPropertySet)cell).setPropertyValue("WritingMode", new Any((short)
WritingMode.TB_RL));
Non ho ancora provato in python, ma suppongo che sarebbe stato qualcosa di simile:
cell = table.getCellByName(cellName)
cell.WritingMode = 2
Se stai usando un linguaggio a tipizzazione statica, assicurarsi che la lanci a breve. Facendo typeof(WritingMode)
non funziona, per qualche strana ragione.
questo problema nel tracker OOo bug.