Seite 1 von 1

Makro ( Linuxpfad )

Verfasst: Mi, 16.12.2009 13:13
von mike6
Hallo,

ich habe hier im Forum einen Code (Makro) für eine Bilderübersicht gefunden
Sub BilderEinfuegenPlusBookmark

DIM Array()

oDoc=ThisComponent

oFolderDlg = createUnoService("com.sun.star.ui.dialogs.FolderPicker")
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
DIM oSize as new com.sun.star.awt.Size

document = oDoc.CurrentController.Frame

sfolder=oFolderDlg.execute()
sPfad=ConvertFromUrl(oFolderDlg.Directory)
sDatei=Dir(sPfad+"\*.jpg",0)

do

REM *** Auslesen des nächsten Bildes
sDatei=Dir$

REM *** ans Ende des Dokumentes gehen und.....
oPos=oDoc.Text.getEnd()

REM *** Dateiname einfügen
oPos.string= sDatei

REM *** Zeilenformatierung "Überschrift" (für das Inhaltsverzeichnis bzw. die Bookmarks als PDF Datei erforderlich)
CALL ZeilenFormat

REM *** Bild einfühen
oBild = oDoc.createInstance( "com.sun.star.text.GraphicObject")
oBild.GraphicURL=convertToURL(sPfad+"\"+sDatei)

REM *** Größe setzen
oSize.Width=17100
oSize.Height=24930
oBild.setSize(oSize)

REM ...das einfügen des Bildes
oDoc.Text.insertTextContent(oPos, oBild, false )

REM *** Seitenwechsel einfügen
dispatcher.executeDispatch(document, ".uno:InsertPagebreak", "", 0, Array())

Loop While sDatei<>""

end Sub

'###########################################

sub ZeilenFormat

dim document as object
dim dispatcher as object
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

dim args1(1) as new com.sun.star.beans.PropertyValue
args1(0).Name = "Template"
args1(0).Value = "Überschrift 1"
args1(1).Name = "Family"
args1(1).Value = 2

dispatcher.executeDispatch(document, ".uno:StyleApply", "", 0, args1())

end sub

'###########################################
Wie muss die Pfadangabe lauten, wenn die Bilder unter LINUX im home-Verzeichnis liegen?


mfg
mike

Re: Makro ( Linuxpfad )

Verfasst: Mi, 16.12.2009 13:28
von Karolus
Hallo
Im Makro wird der Pfad zunächst über einen Verzeichnisauswahldialog ausgewählt.

Dein Home unter Linux dürfte sein:

sPfad= "/home/mike6/" 'da muss natürlich dein richtiger Nutzername rein
die Forlgezeile dann:
sDatei=Dir(sPfad+"*.jpg",0)

Gruß Karo