Hallo,
ich möchte mit einem Makro Grafiken in original Größe mit einem Tabellen Dokument verknüpfen.
Ich finde keine Möglichkeit, die originale Größe einzustellen.
Das ist der Code, den ich mir zusammen gebastelt habe.
DIM sFolderUrl as string ' Pfad
Dim Page As Object
Dim GraphicObjectShape As Object
Dim Point As New com.sun.star.awt.Point
Dim Size As New com.sun.star.awt.Size
Sub Grafik_einfuegen
i = 1
Aktueller_pfad ' holt den aktuellen Pfad
Doc = ThisComponent
Page =thisComponent.sheets(0).DrawPage
GraphicObjectShape = Doc.createInstance("com.sun.star.drawing.GraphicObjectShape")
Size.Width = 5290 'Grösse
Size.Height = 12170 'Grösse
GraphicObjectShape.Size = Size
Point.x = 12000 'Position
Point.y = 200 'Position
GraphicObjectShape.Position = Point
GraphicObjectShape.GraphicURL = sFolderUrl & "Berg Inverntar.png"
GraphicObjectShape.Name = "Grafik" & i
Page.add(GraphicObjectShape)
End Sub
Grüße
Zuletzt geändert von Krangel am Di, 16.06.2015 16:54, insgesamt 1-mal geändert.
Hi,
also verstehen tue ich das nicht, woher weiß denn --> Rechtsklick>Originalgröße die Originalgröße?
Helfen würde es, wenn man per Makro die Grafik markieren könnte.
Krangel hat geschrieben:woher weiß denn --> Rechtsklick>Originalgröße die Originalgröße?
Das liegt in den Geheimnissen des Quellcodes
Dass es bei PNG nicht anders geht (weil die Grösse nicht in dem BASIC-Objekt hinterlegt ist) - mag ein Bug sein...
Die Zeile ThisComponent.CurrentController.select(GraphicObjectShape), am Ende Deines Makros zugefügt, selektiert das gerade eingefügte Objekt, die restlichen Zeilen rufen die Originalgrösse ab.
ขอบคุณ
Cheers Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5 DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)