BITTE helfen Sie uns HEUTE mit einer SPENDE
Das LibreOffice Forum braucht jetzt Ihre Hilfe!

❤️ DANKE >><< DANKE ❤️

> KEINE WERBUNG FÜR REGISTRIERTE BENUTZER!<
Ihre Spende wird für die Deckung der laufenden Kosten sowie den Ausbau 🌱 des LibreOffice Forums verwendet.
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

Bitmap aus Systemclipboard in Writer einfügen

Alles zur Programmierung im LibreOffice.
Antworten
DavidG
Beiträge: 195
Registriert: Do 22. Mär 2018, 21:41

Bitmap aus Systemclipboard in Writer einfügen

Beitrag von DavidG » Fr 20. Apr 2018, 14:27

Hallo,

ich brauche Hilfe in Bezug auf diesen Thread: viewtopic.php?f=5&t=18770

folgendes Szenario:
Ein Snapshot aus einem PDF-Reader in Form eines Bitmaps soll über die Zwischenablage in ein Dokument eingefügt werden.
Diese Aktion erfolgt dreimal, gemäß folgendem Ablaufplan:
A)
  1. Bitmap aus Systemclipboard einfügen
  2. Bitmap zuschneiden
  3. Bitmapgröße ändern
  4. Bitmap an seine Zielposition verschieben
  5. Bildmarkierung aufheben
B)
  1. Bitmap aus Systemclipboard einfügen
  2. Bitmap zuschneiden
  3. Bitmapgröße ändern
  4. Bitmap an seine Zielposition verschieben
  5. Bildmarkierung aufheben
C)
  1. Bitmap aus Systemclipboard einfügen
  2. Bitmap zuschneiden
  3. Bitmapgröße ändern
  4. Bitmap an seine Zielposition verschieben
  5. Bildmarkierung aufheben
Habe ein Makro aufgezeichnet, aber die Dispatcher-Methode scheint etwas unzuverläßig zu sein. Wenn ich den Dispatcher separat, ohne den anderen Code ausführe, dann muß ich die Markierung des eingefügten Bitmaps manuell aufheben, damit ein weitersmal ein Bitmap per Code eingefügt werden kann, aber selbst dann kommt es vor, dass keinerlei Aktion passiert. Das System-Clipboard scheint leer zu sein oder hat den Fokus verloren.

Code: Alles auswählen

REM  *****  BASIC  *****
Sub Main
rem ----------------------------------------------------------------------
rem define variables
Dim oDoc   as object
Dim oCC   as object
Dim oFrame as Object
Dim dispatcher as object

		oDoc= ThisComponent
		oCC=oDoc.CurrentController
' 		mri oDoc
'		mri occ
rem ----------------------------------------------------------------------
rem get access to the document
oFrame   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

rem ----------------------------------------------------------------------
dispatcher.executeDispatch(oFrame, ".uno:Paste", "", 0, Array())

End Sub
Der Code aus diesem Wiki (https://wiki.documentfoundation.org/Macros/Writer/005) erfasst Text aus der Zwischenablage. Diesen habe ich versucht, so anzupassen, dass per Mimetyp Änderung, etc. ein Bitmap erfasst wird. Dieses ist mir jedoch nicht gelungen.
Mimetype zum Beispiel: application/x-openoffice;windows_formatname="Bitmap"
Dieses konte ich auch nicht umsetzen:
The next example shows this for a bitmap.

Das Makro für das Zuschneiden, usw. ist bereits fertig.
Es fehlen mir die folgende Methoden:
  1. Bitmap aus Zwischablage einfügen.
  2. Markierung/ Selektion des eingefügten Bildes aufheben.
Erbitte Hilfe, vielen Dank

Gruß
David
Gruß

David
___________________
WIN 10 PRO
LO 7.4.5.1 (x64)

An alle, die das LibreOffice-Forum nutzen:


Bitte beteiligen Sie sich mit 7 Euro pro Monat und helfen uns bei unserem Budget für das Jahr 2024.
Einfach per Kreditkarte oder PayPal.
Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet.

❤️ Vielen lieben Dank für Ihre Unterstützung ❤️

Antworten