Bilder komprimieren
Schulle65
Gesendet: 03.03.12 11:08
Betreff: Bilder komprimieren


Hallo Gemeinde,

ich hatte schon verschiedenes probiert um Bilder mit VBA zu verkleinern.

Nun hatte ich folgende Idee und wollte dieses mal zur Diskussion stellen:

Ich füge in ein leeres Word Dokument ein Bild ein und speicher dieses als Website (*.htm). Word erstellt darauf hin die Datei und einem Ordner das Originalbild und das komprimierte Bild.
Nachteil davon ist ganz klar der Umweg über das speichern auf der Festplatte - also für viele Dateien eher nicht zu gebrauchen. Spricht sonst etwas noch dagegen?

Hier mal der Code dazu:

'-----------Anfang-----------------------

Function BildVerkleinern(sQuelle As String, sZiel As String, sTempDoc As String) As Boolean
Dim sPfad As String
Dim objWord As Word.Application
Dim odoc As Word.Document

If Dir(sTempDoc) = "" Then
MsgBox "Leeres Worddokument fehlt"
Exit Function
End If

sPfad = CurrentProject.Path & "\TempBilder\"

If Dir(sPfad, vbDirectory) = "" Then MkDir sPfad



Set objWord = New Word.Application
Set odoc = objWord.Documents.Open(sTempDoc)


odoc.InlineShapes.AddPicture FileName:=sQuelle ', LinkToFile:=False, SaveWithDocument:=True
objWord.ActiveDocument.SaveAs FileName:=sPfad & "Temp.htm", FileFormat:=wdFormatHTML

odoc.Close False
objWord.Quit

Set odoc = Nothing
Set objWord = Nothing

If Dir(sPfad & "Temp-Dateien\image002.jpg") <> "" Then
FileCopy sPfad & "Temp-Dateien\image002.jpg", sZiel
On Error Resume Next
Kill sPfad & "Temp.htm"
Kill sPfad & "Temp-Dateien\filelist.xml"
Kill sPfad & "Temp-Dateien\image001.jpg"
Kill sPfad & "Temp-Dateien\image002.jpg"
BildVerkleinern = True
End If
End Function

'----------Ende------------------------


Jürgen
Top of the page Bottom of the page