Fragen zu Writer-Makros

Hallo Franklin,

unter https://extensions.libreoffice.org/extensions/change-multiple-images-in-writer-pictool gibt es eine Extension für LibreOffice, mit der man Bilder auf vielfältige modifizieren kann.

Das ist zwar jetzt nicht die exakte Lösung für Dein Problem, aber ich denke, man kann in dem Makrokode die Stellen finden, wo die Bildgröße verändert wird.

[1] Download-Datei "PicTool-1.0.7_LibreOffice4.oxt" entpacken.
[2] Im Verzeichnis "PicTool-1.0.7_LibreOffice4" ist ein Verzeichnis "PicTool"
[3] Im Verzeichnis "PicTool" ist die Datei "PicTool.xba"
[4] In der Datei "PicTool.xba" sind alle Makro-Anweisungen.
[5] Ab "rem------- scale" sind wohl die Anweisungen, um die Bildgröße zu modifizieren. "g." ist dabei "g = ThisComponent.CurrentSelection(0)".

Vielleicht kann ja Thomas aus diesen Informationen ein entsprechendes Makro zusammenbauen ...

Gruß
Hans-Werner

Hallo OoOHWHOoO,

danke auch Dir für diesen Tipp ... das liest sich ja auch sehr
interessant, vielleicht kann ich die Extension sogar so wie sie ist
auch verwenden ... werde ich mir auf jeden Fall ansehen und
ausprobieren.

Nochmals besten Dank ...

.... und tschüss

            Franklin

Hallo Franklin,

OoOHWHOoO schrieb:

Hallo Franklin,

unter
https://extensions.libreoffice.org/extensions/change-multiple-images-in-writer-pictool
gibt es eine Extension für LibreOffice, mit der man Bilder auf
vielfältige modifizieren kann.

Das ist zwar jetzt nicht die exakte Lösung für Dein Problem, aber ich
denke, man kann in dem Makrokode die Stellen finden, wo die Bildgröße
verändert wird.

[1] Download-Datei "PicTool-1.0.7_LibreOffice4.oxt" entpacken.
[2] Im Verzeichnis "PicTool-1.0.7_LibreOffice4" ist ein Verzeichnis
"PicTool"
[3] Im Verzeichnis "PicTool" ist die Datei "PicTool.xba"
[4] In der Datei "PicTool.xba" sind alle Makro-Anweisungen.
[5] Ab "rem------- scale" sind wohl die Anweisungen, um die Bildgröße
zu modifizieren. "g." ist dabei "g = ThisComponent.CurrentSelection(0)".

Vielleicht kann ja Thomas aus diesen Informationen ein entsprechendes
Makro zusammenbauen ...

Wenn du nur dieses eine Problem lösen möchtest, müsste es so gehen:

sub TextGraphicFixSize
dim oDocument as variant: oDocument = ThisComponent
dim oCurrentSelection as variant: oCurrentSelection = oDocument.CurrentSelection
if Not(oCurrentSelection.supportsService("com.sun.star.text.TextGraphicObject")) then
  msgbox("Nur für eine ausgewählte Grafik in Writer")
  exit sub
end if
dim eSize as new com.sun.star.awt.Size
eSize.Width = 2000 '1/100 mmm
eSize.Height = 2000
oCurrentSelection.Size = eSize
end sub

Beachte, dass durch das Mail-Programm hier Zeilenumbrüche drin sein können, wo keine hineingehören:
dim oCurrentSelection ... oDocument.CurrentSelection ist eine Zeile
if ... then ist eine Zeile

Dieses Makro macht 2cm x 2cm

Wenn du das Seitenverhältnis beibehalten willst, melde dich noch mal. Das ist auch nicht schwer.

Mit freundlichen Grüßen
Regina

Hallo Regina,

Wenn du nur dieses eine Problem lösen möchtest, müsste es so gehen:

sub TextGraphicFixSize
dim oDocument as variant: oDocument = ThisComponent
dim oCurrentSelection as variant: oCurrentSelection =
oDocument.CurrentSelection
if
Not(oCurrentSelection.supportsService("com.sun.star.text.TextGraphicObject"))
then
  msgbox("Nur für eine ausgewählte Grafik in Writer")
  exit sub
end if
dim eSize as new com.sun.star.awt.Size
eSize.Width = 2000 '1/100 mmm
eSize.Height = 2000
oCurrentSelection.Size = eSize
end sub

Beachte, dass durch das Mail-Programm hier Zeilenumbrüche drin sein
können, wo keine hineingehören:
dim oCurrentSelection ... oDocument.CurrentSelection ist eine Zeile
if ... then ist eine Zeile

Danke für diese beiden wichtigen Hinweise!

Dieses Makro macht 2cm x 2cm

Ich hab anstelle der '2000' eben einfach meine gewünschten '330'
gesetzt und damit die von mir gewünschte Größe von 0,33 cm in Breite
und Höhe erreicht.

Wenn du das Seitenverhältnis beibehalten willst, melde dich noch mal.
Das ist auch nicht schwer.

Danke, so, wie es ist, funktioniert es wunderbar!

Jetzt müsste in der Symbolleiste auch nur noch das zugewiesene Icon
- wie es im Anpassen-Dialog geschieht - erscheinen anstelle des
Namens. Kannst Du *dieses* Problem eigentlich auch nachvollziehen?
Und gibt's dafür womöglich auch schon 'nen Bug, wo man sich mit
eintragen könnte?

Hast Du 'ne Ahnung, warum nach den zwei einfachen Zeilen von Thomas,
die ja im Prinzip auch das Gewünschte gemacht haben, sich das
Dokument dann nicht mehr speichern ließ?

Hey Franklin

Hast Du 'ne Ahnung, warum nach den zwei einfachen Zeilen von Thomas,
die ja im Prinzip auch das Gewünschte gemacht haben, sich das
Dokument dann nicht mehr speichern ließ?

Hab mal weiter "gegraben". Aus welchen Gründen auch immer... aber die Zeile

    thisComponent.CurrentController.ViewCursor.textframe...

scheint etwas zu zerstören. Egal, was man daraus macht (ich habe z.B. nur den Namen ausgelesen) - jedenfalls entfernt die Zeile offensichtlich den Service com.sun.star.text.TextGraphicObject - und dann gibt´s Probleme:)

Lasse ich eine solche oder ähnliche Zeile im Makro weg und arbeite mit anderen Methoden, funktioniert alles wie es soll - auch das "Speichern" geht.

Taucht eine solche Zeile auf ( also speziell dieser Part "...CurrentController.ViewCursor.textframe...") geht das Speichern schief.

Ich habe auch mal ne Bug-Report aufgegeben #111731 (https://bugs.documentfoundation.org/show_bug.cgi?id=111731) aber ich glaube das ist nur eine Ausprägung.

Die Probleme mit der "content.xml" lassen sich in letzter Zeit häufiger finden. Das wird also nur eine Ausprägung sein.

Viele Grüße
Thomas

Hallo Franklin,

Franklin Schiftan schrieb:

Jetzt müsste in der Symbolleiste auch nur noch das zugewiesene Icon
- wie es im Anpassen-Dialog geschieht - erscheinen anstelle des
Namens. Kannst Du *dieses* Problem eigentlich auch nachvollziehen?
Und gibt's dafür womöglich auch schon 'nen Bug, wo man sich mit
eintragen könnte?

Wenn du ein Icon zuweisen willst, dann darf unter Extras > Optionen > Libreoffice >View die Symbolgröße nicht auf "automatisch" stehen. Du musst statt dessen einmal "klein" einstellen und dann im Anpassen-Dialog ein 16x16 Icon auswählen. Wieder zurück und als Symbolgröße "groß" einstellen, dann wieder Anpassen-Dialog und ein 26x26 (bei Symbolstil Galaxy) bzw 24x24 bei den anderen auswählen.
Erst danach kannst du die Symbolgröße wieder auf "automatisch" zurückstellen.

Hast Du 'ne Ahnung, warum nach den zwei einfachen Zeilen von Thomas,
die ja im Prinzip auch das Gewünschte gemacht haben, sich das
Dokument dann nicht mehr speichern ließ?

Keine Ahnung.

Mit freundlichen Grüßen
Regina

Hallo Regina,

Franklin Schiftan schrieb:

Jetzt müsste in der Symbolleiste auch nur noch das zugewiesene
Icon - wie es im Anpassen-Dialog geschieht - erscheinen
anstelle des Namens. Kannst Du *dieses* Problem eigentlich auch
nachvollziehen? Und gibt's dafür womöglich auch schon 'nen Bug,
wo man sich mit eintragen könnte?

Wenn du ein Icon zuweisen willst, dann darf unter Extras >
Optionen > Libreoffice >View die Symbolgröße nicht auf
"automatisch" stehen. Du musst statt dessen einmal "klein"
einstellen und dann im Anpassen-Dialog ein 16x16 Icon auswählen.
Wieder zurück und als Symbolgröße "groß" einstellen, dann wieder
Anpassen-Dialog und ein 26x26 (bei Symbolstil Galaxy) bzw 24x24
bei den anderen auswählen. Erst danach kannst du die Symbolgröße
wieder auf "automatisch" zurückstellen.

Mein Gott ... DANKE ...

1. Woher weißt Du sowas?
2. Ist es Absicht, das LibO es seinen Usern hier so schwer macht?
   Irgendwie habe ich dunkel in Erinnerung, dass es früher
   (und/oder bei anderen Office-Suiten) nicht so kompliziert war,
   ein Icon zuzuweisen. Kann das sein?

Hast Du 'ne Ahnung, warum nach den zwei einfachen Zeilen von
Thomas, die ja im Prinzip auch das Gewünschte gemacht haben,
sich das Dokument dann nicht mehr speichern ließ?

Keine Ahnung.

Na gut, dazu hat er ja inzwischen auch selber schon was rausgefunden.

Mit freundlichen Grüßen Regina

Nochmals danke für Deine kompetente und zielführende Hilfe ...

Ich denke an alle,

Regina weiß sowas weil sie schon sehr lange dabei ist.

Gesendet: Sonntag, 13. August 2017 um 07:25 Uhr
Von: "Franklin Schiftan" <franklin.schiftan@gmx.de>
An: users@de.libreoffice.org
Betreff: Re: [de-users] Fragen zu Writer-Makros

Hallo Regina,

1. Woher weißt Du sowas?

Von Absicht kann man nicht direkt sprechen. So kompliziert ist es wahrscheinlich geworden weil was anderes was viele wollten jetzt überhaupt erst geht oder eben viel einfacher geht. Da bleibt immer was auf der Strecke was plötzlich nur noch über "UMWEGE" geht.

2. Ist es Absicht, das LibO es seinen Usern hier so schwer macht?
   Irgendwie habe ich dunkel in Erinnerung, dass es früher
   (und/oder bei anderen Office-Suiten) nicht so kompliziert war,
   ein Icon zuzuweisen. Kann das sein?

Ich bin froh wenn was überhaupt noch geht ohnees über makros oder so wieder möglich zu machen. Die Technik läuft immer weiter und was gestern nur auf Umwegen geht, geht heute direkt und morgen vielleicht wieder auf anderen Umwegen, weil es doch nicht so viele wollten wie erhofft.

Gruß
Christian Palm

Hallo Christian,

Von Absicht kann man nicht direkt sprechen. So kompliziert ist
es wahrscheinlich geworden weil was anderes was viele wollten
jetzt überhaupt erst geht oder eben viel einfacher geht. Da
bleibt immer was auf der Strecke was plötzlich nur noch über
"UMWEGE" geht.

2. Ist es Absicht, das LibO es seinen Usern hier so schwer
macht? Irgendwie habe ich dunkel in Erinnerung, dass es früher
(und/oder bei anderen Office-Suiten) nicht so kompliziert war,
ein Icon zuzuweisen. Kann das sein?

Ich bin froh wenn was überhaupt noch geht ohnees über makros
oder so wieder möglich zu machen.

Hmm, aber dann hätte ich mir als unbedarfter User gewünscht, dass
nach Klick auf 'Change Icon' *nicht* gleich die Icons zur Auswahl
angezeigt werden - weil das ja eh keinen Sinn macht und nicht
funktioniert -, sondern dass dann erstmal _gleich von LibO_ diese
Umwege-Gebrauchsanleitung, so wie sie Regina hier geschrieben hat,
angezeigt wird - am besten noch mit einem Link, der direkt zu der
Options-Einstellung führt. DAS wäre dann eine sinnvolle Usability.

Die Technik läuft immer weiter und was gestern nur auf Umwegen
geht, geht heute direkt und morgen vielleicht wieder auf anderen
Umwegen, weil es doch nicht so viele wollten wie erhofft.

Das mag ja alles sein, aber dann muss man wie gesagt die jeweiligen
Änderungen bzw. deren Umwege-Auswirkungen bei der Gelegenheit, wo
der User die veränderte Funktion nutzen möchte, ihm direkt und
gleich zur Kenntnis bringen. Nicht jeder ist so hartnäckig,
ausdauernd und in der Lage, sich deswegen in einer ML anzumelden
oder 'nen Bug dazu aufzugeben.

Große Zustimmung!!!

und

DANKE

... und nicht nur, weil sie schon lange bei ist,
sondern auch, dass sie ihr Wissen (in verständlicher Form) auch gerne weiter
gibt

nochmal

DANKE

Frank