von turtle47 » Sa, 12.01.2008 16:55
			
			
			Hallo Zusammen,
wolle2000 hat geschrieben:Wenn du mit "serienmäßig" meinst, dass du mehrere Bilder hintereinander in einem Rutsch exportieren kannst, nein, das geht nicht.
@Wolfgang: Geht nicht, gibts (fast) nicht. Das kennst Du doch aus der Vergangenheit 
Ich setze mal voraus, dass auf der Drawpage nur Bilder enthalten sind.
@Horst: In diesem Fall ist folgendes Makro Dein Freund:
Code: Alles auswählen
Sub ExportAllShapesToPNG()
	oDoc = ThisComponent
	oDocCtrl = oDoc.getCurrentController()
	oDrawPage = oDocCtrl.getCurrentPage()
	nNumShapes = oDrawPage.getCount()
	num=1
	For i = 0 To nNumShapes - 1
	oShape = oDrawPage.getByIndex( i )
	oExportFilter = createUnoService( "com.sun.star.drawing.GraphicExportFilter" )
	oExportFilter.setSourceDocument( oShape )   
	cExportUrl = oDoc.getURL()
	cExportUrl = Left( cExportUrl, Len(cExportUrl)-4 ) + "_" + oDrawPage.getName()+ "_Bild_" + num + ".png"
	oExportFilter.filter( _
      Array( _
         MakePropertyValue( "MediaType", "image/png" ),_
         MakePropertyValue( "URL",      cExportUrl ) ) )
         num = num + 1
    next
End Sub
Function MakePropertyValue( Optional cName As String, Optional uValue ) As com.sun.star.beans.PropertyValue
   oPropertyValue = createUnoStruct( "com.sun.star.beans.PropertyValue" )
   If Not IsMissing( cName ) Then
      oPropertyValue.Name = cName
   EndIf
   If Not IsMissing( uValue ) Then
      oPropertyValue.Value = uValue
   EndIf
   MakePropertyValue() = oPropertyValue
End Function
Es legt alle Objekte (Shapes) im gleichen Verzeichnis der Draw-Datei als PNG ab, die ja von IrvanView gelesen werden kann.
Informationen zum Installieren und einbinden findest du hier:
http://www.ooowiki.de/MakrosInstallierenKapitel Quellcode..
http://www.ooowiki.de/MakrosMitEinemKlick
http://www.ooowiki.de/SchaltFl%C3%A4che
Hilft Dir das weiter?
Viel Erfolg.
Jürgen
 
			
			
							Hallo Zusammen,
[quote="wolle2000"]Wenn du mit "serienmäßig" meinst, dass du mehrere Bilder hintereinander in einem Rutsch exportieren kannst, nein, das geht nicht.
[/quote]@Wolfgang: Geht nicht, gibts (fast) nicht. Das kennst Du doch aus der Vergangenheit ;-)
Ich setze mal voraus, dass auf der Drawpage nur Bilder enthalten sind.
@Horst: In diesem Fall ist folgendes Makro Dein Freund:
[code]Sub ExportAllShapesToPNG()
	oDoc = ThisComponent
	oDocCtrl = oDoc.getCurrentController()
	oDrawPage = oDocCtrl.getCurrentPage()
	nNumShapes = oDrawPage.getCount()
	num=1
	For i = 0 To nNumShapes - 1
	oShape = oDrawPage.getByIndex( i )
	oExportFilter = createUnoService( "com.sun.star.drawing.GraphicExportFilter" )
	oExportFilter.setSourceDocument( oShape )   
	cExportUrl = oDoc.getURL()
	cExportUrl = Left( cExportUrl, Len(cExportUrl)-4 ) + "_" + oDrawPage.getName()+ "_Bild_" + num + ".png"
	oExportFilter.filter( _
      Array( _
         MakePropertyValue( "MediaType", "image/png" ),_
         MakePropertyValue( "URL",      cExportUrl ) ) )
         num = num + 1
    next
End Sub
Function MakePropertyValue( Optional cName As String, Optional uValue ) As com.sun.star.beans.PropertyValue
   oPropertyValue = createUnoStruct( "com.sun.star.beans.PropertyValue" )
   If Not IsMissing( cName ) Then
      oPropertyValue.Name = cName
   EndIf
   If Not IsMissing( uValue ) Then
      oPropertyValue.Value = uValue
   EndIf
   MakePropertyValue() = oPropertyValue
End Function[/code]Es legt alle Objekte (Shapes) im gleichen Verzeichnis der Draw-Datei als PNG ab, die ja von IrvanView gelesen werden kann.
Informationen zum Installieren und einbinden findest du hier:
http://www.ooowiki.de/MakrosInstallierenKapitel Quellcode..
http://www.ooowiki.de/MakrosMitEinemKlick
http://www.ooowiki.de/SchaltFl%C3%A4che
Hilft Dir das weiter?
Viel Erfolg.
Jürgen