Speichern

Beispiel für das Speichern des aktuellen Bildes mit dem Befehl FF_SaveImage:
Option Explicit
Dim bild,quality
 
bild = "D:\Eigene Dateien\PICT0152_ff.JPG"  'beipielhaft
quality = 0
 
FF_SaveImage bild,quality
Erläuterung zur quality aus der Hilfe:
Die quality (JPEG-Qualität) lässt sich von 1-100 einstellen; 0 entspricht der FixFoto-Einstellung.

Ist das Dateiformat TIF und quality=0, dann wird die LZW-Komprimierung verwendet;
Ist quality ungleich 0, dann wird das TIF unkomprimiert gespeichert.


Ist das Bild bereits vorhanden, wird dieses ohne Rückfrage mit dem aktuellen Bild überschrieben.
Es ist daher sinnvoll, dies vor dem Speichern zu prüfen und
- man lässt vorhandene Bilder aus
Option Explicit
Dim bild,quality
 
Dim objFS
Set objFS = CreateObject("Scripting.FileSystemObject")
 
bild = "D:\Eigene Dateien\PICT0152_ff.JPG"  'beispielhaft
quality = 0
 
if not objFS.FileExists(bild) then FF_SaveImage bild,quality
- oder man fragt jedes mal nach, ob das vorhandene Bild überschrieben werden soll.
Option Explicit
Dim bild,quality,antwort
 
Dim objFS
Set objFS = CreateObject("Scripting.FileSystemObject")
 
bild = "D:\Eigene Dateien\PICT0153_ff.JPG"  'beispielhaft
quality = 0
 
if objFS.FileExists(bild) then
    antwort = msgbox("Das Bild " & objFS.GetFileName(bild) & " ist bereits vorhanden." & vbNewLine & vbNewLine & _
                     "Soll es überschrieben werden?",vbQuestion or vbYesNo,"Sicherheitsabfrage")
    if antwort = vbYes then FF_SaveImage bild,quality
else
    FF_SaveImage bild,quality
end if



Wenn viele Bilder in einer Schleife bearbeitet und gespeichert werden, kann die Nachfrage, ob ein vorhandenes Bild überschrieben werden soll, sehr lästig sein. Es bietet sich dann an, vorhandene Bilder zu nummerieren mit (1), (2) usw.
Option Explicit
Dim bild,quality,antwort,ordner,name,extension,n
 
Dim objFS
Set objFS = CreateObject("Scripting.FileSystemObject")
 
bild = "D:\Eigene Dateien\PICT0153_ff.JPG"
quality = 0
 
 
'### vorhandene Bilder nummerieren mit (1), (2) usw.
if objFS.FileExists(bild) then
    ordner = objFS.GetParentFolderName(bild) & "\"
    name = ordner & objFS.GetBaseName(bild)
    extension = "." & objFS.GetExtensionName(bild)
    n = 1
 
    do
        if not objFS.FileExists(name & "(" & n & ")" & extension) then exit do
        n = n + 1
    loop
    bild = name & "(" & n & ")" & extension
end if
 
'### Speichern
FF_SaveImage bild,quality
So wird sicher vermieden, dass vorhandene Bilder überschrieben werden.