Hallo,
bin neu hier, mit einer Anfängerfrage, die hoffentlich für die Pros kein Problem darstellt
.
Kurze Vorgeschichte: ich benutze Fixfoto nicht selbst, sondern helfe nur einem befreundeten Fotografen aus der es einsetzt. Es sind versch. Skripte vorhanden, der Mitarbeiter der sie original erstellt hat jedoch nicht mehr
. Ich konnte schon vorher einmal helfen, da ging es aber nur um die Anpassung von Pfaden und Dateinamen.
Jetzt hat der Fotograf die neue Version 3.0 inkl. PerfectlyClear erworben und möchte letzteres gern in ein vorh. Skript eingebunden haben, und daß kriege ich mit quasi 0 vbs-Kenntnissen nicht mehr hin.
Hier das original Skript:
Das Skript kopiert also *.jpg Dateien vom Kartenleser, passt die Größe an, fügt einen Rahmen hinzu und kopiert das Ergebnis dann in einen weiteren Ordner.
Das Ziel wäre jetzt, vor allen anderen Bearbeitungsschritten die PerfectlyClear Optimierung zu integrieren. Ich habe schon die Funktion "FF_PerfectlyClear16" entdeckt, aber meine amateurhaften Versuch endeten immer mit der Fehlermeldung "kein Bild geladen" der Funktion.
Also ist die eigentliche Frage, wie lade ich alle vom Kartenleser auf die HD kopierten Bilder für die Bearbeitung mittels "FF_PerfectlyClear16" Funktion, idealerweise als ersten Bearbeitungsschritt im obigen Skript (also bevor Rahmen und Größenanpassung).
Bin für alle Hinweise dankbar!
bin neu hier, mit einer Anfängerfrage, die hoffentlich für die Pros kein Problem darstellt

Kurze Vorgeschichte: ich benutze Fixfoto nicht selbst, sondern helfe nur einem befreundeten Fotografen aus der es einsetzt. Es sind versch. Skripte vorhanden, der Mitarbeiter der sie original erstellt hat jedoch nicht mehr

Jetzt hat der Fotograf die neue Version 3.0 inkl. PerfectlyClear erworben und möchte letzteres gern in ein vorh. Skript eingebunden haben, und daß kriege ich mit quasi 0 vbs-Kenntnissen nicht mehr hin.
Hier das original Skript:
Code:
Function Speicherkarte()
fenster = 1
If (fso.FolderExists("i:\dcim")) Then
Else
fenster = Msgbox("Bitte stellen Sie sicher das sich die SD Card korrekt im Kartenlesegerät befindet und drücken Sie anschließend auf OK !",69,"Hinweis SD Speicherkarte")
if fenster = 4 Then
Speicherkarte()
Else
End If
End If
End Function
Function Dateienkopieren()
Dim f, f1, s, sf
Set f = fso.GetFolder("i:\dcim")
Set sf = f.SubFolders
For Each f1 in sf
fso.CopyFile "i:\dcim\" & f1.name & "\*.*", "C:\Fixfoto-Bilder\WB\Output\"
Next
End Function
Function Bildbearbeiten(name)
dim rahmen, text
dim color, i
dim fso, path, dir, file, ext
dim praefix, suffix
dim amax, bmax, a, b
dim xmax, ymax, x, y
dim rot
dim dpi
dim info
dim imagenum
dpi = 300
amax = 1728
a = 1670
bmax = 1248
b = 1080
color = 255
qjpeg = 98
rahmen = "c:\rahmen\gruppen4.tif"
text = ""
call FF_LoadImage("C:\Fixfoto-Bilder\WB\Output\" & name)
if FF_GetImageHeight > FF_GetImageWidth then
xmax = bmax
x = b
ymax = amax
y = a
suffix = "_10x15"
else
xmax = amax
x = a
ymax = bmax
y = b
suffix = "_15x10"
end if
'call FF_HQScale(x,y,true)
'call FF_ExtendCanvas(0,0,0,78,color,color,color)
'call FF_ExtendCanvas(0,(xmax - FF_GetImageWidth),0,(ymax - FF_GetImageHeight),color,color,color)
call FF_SetDPI(300)
call FF_PushImage()
call FF_LoadImage(rahmen)
call FF_SwapImage()
call FF_LogoMix(text,100,0,0,100,0,16777215,1,0)
call FF_SaveImage("C:\Fixfoto-Bilder\WB\Output\" & name,100)
schritt2 = schritt + schritt2
call FF_SetProgress(schritt2,100)
End Function
Function Bilderzaehlen()
Dim f, fc , f1, s
Set f = fso.GetFolder("C:\Fixfoto-Bilder\WB\Output\")
Set fc = f.Files
For Each f1 in fc
anzahl = anzahl + 1
Next
schritt = 100 / anzahl
call FF_SetProgress(schritt,100)
End Function
Function Bilderoeffnen()
Dim f, fc, f1, s
Set f = fso.GetFolder("C:\Fixfoto-Bilder\WB\Output\")
Set fc = f.Files
For Each f1 in fc
Bildbearbeiten(f1.name)
Next
End Function
Dim fso, ordner, s, anzahl, schritt, schritt2, fenster, stime
anzahl = 0
schritt2 = 0
Set fso = CreateObject("Scripting.FileSystemObject")
fenster = msgbox("Achtung sind Sie sicher, dass Sie die Bilder der letzten SD Card belichtet haben? Wenn nicht wählen Sie Abbrechen, da ansonsten die Bilder verloren gehen. Ansonsten starten Sie das Script mit OK",65,"Achtung")
if fenster = 1 Then
Speicherkarte()
Else
End If
stime = hour(now) & "-" & minute(now) & "-" & second(now)
if fenster = 1 Then
'fso.DeleteFolder ("C:\Fixfoto\Output\")'
'fso.CreateFolder ("C:\Fixfoto\Output\")'
fso.DeleteFile("C:\Fixfoto-Bilder\WB\Output\*.*")
If (fso.FolderExists("C:\Fixfoto-Bilder\WB\final\" & date & "\")) Then
fso.CreateFolder ("C:\Fixfoto-Bilder\WB\final\" & date & "\" & stime & "\")
Else
fso.CreateFolder ("C:\Fixfoto-Bilder\WB\final\" & date & "\")
fso.CreateFolder ("C:\Fixfoto-Bilder\WB\final\" & date & "\" & stime & "\")
End If
Dateienkopieren()
Bilderzaehlen()
Bilderoeffnen()
fso.CopyFile "C:\Fixfoto-Bilder\WB\Output\*.*", "C:\Fixfoto-Bilder\WB\final\" & date & "\" & stime & "\"
fenster = msgbox("Alle Bilder der Speicherkarte wurden erfolgreich übertragen und bearbeitet.")
Else
fenster = msgbox("Das Script wurde abgebrochen!",48,"Scriptabbruch")
End If
Das Skript kopiert also *.jpg Dateien vom Kartenleser, passt die Größe an, fügt einen Rahmen hinzu und kopiert das Ergebnis dann in einen weiteren Ordner.
Das Ziel wäre jetzt, vor allen anderen Bearbeitungsschritten die PerfectlyClear Optimierung zu integrieren. Ich habe schon die Funktion "FF_PerfectlyClear16" entdeckt, aber meine amateurhaften Versuch endeten immer mit der Fehlermeldung "kein Bild geladen" der Funktion.
Also ist die eigentliche Frage, wie lade ich alle vom Kartenleser auf die HD kopierten Bilder für die Bearbeitung mittels "FF_PerfectlyClear16" Funktion, idealerweise als ersten Bearbeitungsschritt im obigen Skript (also bevor Rahmen und Größenanpassung).
Bin für alle Hinweise dankbar!