Seite 1 von 1

[gelöst] Textausrichtung in Writer-Tabelle

Verfasst: Sa 26. Dez 2020, 15:14
von Ray123
Hallo zusammen,

ich versuche, per Makro einen Text in einer Writer-Tabelle auf rechtsbündig zu setzen, finde dafür aber keine Eigenschaft, habe bisher nur VertOrient für die vertikale Position gefunden. Für die ganze Tabelle gibt es auch HoriOrient, aber ich möchte nur einzelne Zellen rechtsbündig ausrichten. Das müßte doch per Makro möglich sein, da man es über die Bedieneroberfläche auch für jede Zelle extra einstellen kann?

Re: Textausrichtung in Writer-Tabelle

Verfasst: Sa 26. Dez 2020, 16:41
von nitja
Jede Zelle enthält doch einen Writer-"Absatz"? Müsste dann nicht für die Zelle .ParaAdjust=1 funktionieren?

Re: Textausrichtung in Writer-Tabelle

Verfasst: Sa 26. Dez 2020, 20:21
von craig
Hallo Ray,

hier mal ein Muster:
TextTabelle formatieren.odt
(11.83 KiB) 200-mal heruntergeladen

Re: [gelöst]Textausrichtung in Writer-Tabelle

Verfasst: So 27. Dez 2020, 09:38
von Ray123
Danke nitja und craig,

das hat funktioniert, auch wenn der Parameter nur Zahlen möchte und nicht die eigentlich vordefinierten Konstanten LEFT, RIGHT...
Man muß nicht alles verstehen :?
Schöner Tag noch
Ray

Re: [gelöst] Textausrichtung in Writer-Tabelle

Verfasst: So 27. Dez 2020, 13:48
von craig
@Ray123

eigentlich sollte es egal sein, ob man die Konstanten so

• = "com.sun.star.text.VertOrientation.CENTER"
ODER
• = 2
schreibt.

Eine Eingabe wie diese:
= CENTER
ist jedenfalls nicht richtig.

Auch dies ist falsch:
• = "com.sun.star.text.VertOrientation.Center"

Warum die Konstante in Textform nicht akzeptiert wird , ist mir auch ein Rätsel.

Ich teste meine Makro's auch immer in OpenOffice.
Im Zuge der Überprüfung (LO, AOO), bin ich über weitere Kuriositäten gestolpert.
Ob dies nun Bugs (LO und/oder AOO) sind oder ob dies so gewollt ist, konnte ich bisher nicht herausfinden.

Re: [gelöst] Textausrichtung in Writer-Tabelle

Verfasst: So 27. Dez 2020, 14:51
von mikele
Hallo,
Auch dies ist falsch:
• = "com.sun.star.text.VertOrientation.Center"
So sollte es klappen:
• = com.sun.star.text.VertOrientation.Center

Re: [gelöst] Textausrichtung in Writer-Tabelle

Verfasst: So 27. Dez 2020, 15:29
von craig
@mikele

vielen Dank.
mikele hat geschrieben:So sollte es klappen:
• = com.sun.star.text.VertOrientation.Center
Im Zuge meiner Bugverfolgung hatte ich dieses auch getestet,
weiß aber nicht mehr in welchem Zusammenhang.
Jedenfalls funktionierte dies in soweit, als, dass die Makro
durchlief, aber in der Tabelle zeigte sich keine Änderung.

Erneuter Test
Für den Fall, dass jemand danach sucht:

Code: Alles auswählen

oTextCursor.ParaAdjust =com.sun.star.text.ParagraphVertAlign.CENTER
oTextCursor..Cell.VertOrient = com.sun.star.text.VertOrientation.CENTER
oder numerisch:

Code: Alles auswählen

REM --------------------------------------------------------------------------------------------------
REM const short 	AUTOMATIC = 0 	In automatic mode, horizontal text is aligned to the baseline.
REM const short 	BASELINE = 1 	The text is aligned to the baseline.
REM const short 	TOP = 2 	The text is aligned to the top.
REM const short 	CENTER = 3 	The text is aligned to the center.
REM const short 	BOTTOM = 4 	The text is aligned to bottom.
REM --------------------------------------------------------------------------------------------------
oTextCursor.ParaAdjust =3		'com.sun.star.text.ParagraphVertAlign.CENTER
oTextCursor..Cell.VertOrient = 3	'com.sun.star.text.VertOrientation.CENTER