Writer Dokument, restrukturieren erzwingen

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

clag
********
Beiträge: 3570
Registriert: Di, 27.01.2009 15:30

Writer Dokument, restrukturieren erzwingen

Beitrag von clag »

Moin Kenne und Könner,

eine Writer Dokumentes mit bis zu 40 Seiten wird bearbeitet,
unter anderem werden Absätze als versteckte Absätze formatiert dadurch verringert sich die Anzahl der darzustellenden Seiten erheblich zb von 40 auf 15.
Währenddessen hat Writer offensichtlich Probleme die Seiten richtig zu organisieren, denn einige der nun unnötigen Seitenwechsel werden nicht entfernt, so dass große Lücken im Text entstehen.
Speichert man nun diese Datei werden die Lücken unerwünschter weise mit gespeichert.
Schaltet man aber vorher in die Seitenvorschau um bemerkt Writer dieses Lücken-Missgeschick und "plopp, plopp, plopp " ;) wird der Text "restrukturiert" und die unnötigen Seitenumbrüche entfernt.
Nach dieser Seitenvorschau sieht das Dokument wie erwartet/gewünscht aus und besteht nur noch aus zB 10 Seiten.

Wie kann man im Verlauf eines Makro so ein restrukturieren per BasicCode erzwingen, am besten "Blind" ?

im Moment helfe ich mir mit dem zweimaligen Aufruf dieses Code

Code: Alles auswählen

sub a_ppreview
dim document   as object
dim dispatcher as object
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
dispatcher.executeDispatch(document, ".uno:PrintPreview", "", 0, Array())
end sub
mit einem Wait dazwischen also so

Code: Alles auswählen

........
a_ppreview
wait 1000
a_ppreview
..........
aber das ist aber nun wirklich eine Krücken-Lösung und ich möchte es gern besser und schneller machen-

Aber wie ?

ich habe bisher, leider nicht einmal herausgefunden wie man die Seitenvorschau per Basic aufruft
mein Versuch mit "oDoc.printpreview" brachte nichts

und wie immer, gibt es mein Danke für's lesen . . > denken . . . . . . > antworten :lol:
LG
clag

nutzt: WinXP SP3 / AOO 4.1.10 / Firefox