Skript Neues Speicher-Script

hhoefling

Mitglied
Dabei seit
02.01.04
Beiträge
3.994
Standort
NRW/Ruhrgebiet
Trophäen
4! 2*
#1
Hallo,

ich habe gestern Abend eine neue Version des Speicherscriptes im Zubehörbereich abgelegt.

Stichworte:
- Lauffähig ab 2.76B47
- Bearbeitet EXIF Daten des aktuellen Bildes (Speicherscript)
- Bearbeitungs-History (kurz LOG genannt) im Kommentarfeld
- Automatisches abspeichern des Kompressuionsfaktors im Kommentarfeld.
- Autor, Copyright, Beschreibung, Software, Kommentar, Model-Tag können werden verändert.
- Einstempeln von "FixFoto V2.xx B:xx" in alle Bilder.
- Mitführen eine Bilderliste mit den Namen letzten gespeicherten Bilder. (abschaltbar)
- Kleine Online-Hilfe.
- Eigener "Options"-Dialog. Kein editieren des Scriptes nötig.
- Speicher die Einstellungen mit den neuen FF_xxx Funktionen in der Windows-Registry.

Viel Spass beim Testen!
 

dl6hbl

Mitglied
Dabei seit
08.08.03
Beiträge
1.780
Standort
30 km südl. HH
Trophäen
****!!!!{*}
#2
Hallo Heinz,

schön gemacht - habe schon getestet.
Funktioniert im Wesentlichen sehr gut.

2 Anmerkungen:

1.
Bei mehrfachen Aktionen in Multidialogen mit zwischenzeitlichem "Übernehmen"
z.B.

Farbabgleich + übernehmen
Farbtemperatur + ausführen

wird nur die erste Aktion geloggt.

Wenn man die Aktionen getrennt mit "Ausführen" abschließt erscheinen
beide Aktionen pro "Session" in einer Zeile.


2.
Der Kompressionsfaktor wäre die einzige Aktion, bei der mich Mehrfacheinträge nicht stören
würden. Damit kann man die Kompressionshistorie eines Bildes schön verfolgen.


Vielen Dank für Deine Mühe - eine schöne Bereicherung.

viele Grüße

Thorsten
 

Marc

Mitglied
Dabei seit
28.06.02
Beiträge
650
Standort
Buchholz in der Nordheide, Niedersachsen
Trophäen
*!*!*!*
#3
Hallo Heinz,
ich habe auch gleich getestet: SUPER! Eine tolle Bereicherung für FixFoto.

Eine Anmerkung zu dem neuen Options-Dialog. Mir scheint, die vorgenommenen Einstellungen wirken nicht gleich, d.h. ein neues Model-Tag (und andere Einstellungen) wird erst nach erneutem Aufruf des Scriptes im Haupt-Dialog angezeigt. So hatte ich am Anfang keinen Default Copyright, abwohl ich den Artist gepflegt hatte. Jetzt ist das Feld aber gefüllt.

Herzlichen Gruß
Marc
 

hhoefling

Mitglied
Dabei seit
02.01.04
Beiträge
3.994
Standort
NRW/Ruhrgebiet
Trophäen
4! 2*
#4
dl6hbl hat gesagt.:
1. ... wird nur die erste Aktion geloggt.
2. . Der Kompressionsfaktor,
1.) Da ist eigendlich Joachim gefragt, ich verändere das LOG nur in der
Form das ich (je Speicherung) die gelieferte List mit "; " getrennt hinten anhänge,
und dabei das Wort "Scripte" raussortiere. (Speicherscript ist auch ein Script)
Ausserdem werden doppelte Zeilen rausgenommen.

z.B
- Bild laden
- OP1, OP2 , OP3 ausführen
- Speichern "OP1; OP2;, OP3" wird angefügt.
- nochmal speichern: "OP1; OP2;, OP3" wird nicht nocheinmal angefügt.
- OP4 durchführen
- nochmal speichern: "OP1; OP2;, OP3; OP4" wird angefügt.
Die schritte der Multidialoge sollten eigendlich im LOG einzeln vorkommen.

2.) Es wird nur immer der Kompressionsfaktor des letzen Speicherns an das Ende des
Kommentarfeldes gesetzt.

Du meinst es sollen alle KF's gesammelt werden?
 

hhoefling

Mitglied
Dabei seit
02.01.04
Beiträge
3.994
Standort
NRW/Ruhrgebiet
Trophäen
4! 2*
#5
Marc hat gesagt.:
Mir scheint, die vorgenommenen Einstellungen wirken nicht gleich..
Ja das ist so beim Model-Tag, da ja beim ersten Ausfüllen der Haupt-Dialog um ein weiteres Feld "wächst".
Das geht bei meiner einfachen Logig nur mit Neustart des Dialoges.
Ich denke mit dieser Einschränkung, die allerdings in der "Hilfe" erwähnt werden sollte,
kann man leben.
 

dl6hbl

Mitglied
Dabei seit
08.08.03
Beiträge
1.780
Standort
30 km südl. HH
Trophäen
****!!!!{*}
#6
hhoefling hat gesagt.:
1.) Da ist eigendlich Joachim gefragt, ich verändere das LOG nur in der
Form das ich (je Speicherung) die gelieferte List mit "; " getrennt hinten anhänge,
und dabei das Wort "Scripte" raussortiere. (Speicherscript ist auch ein Script)
Ausserdem werden doppelte Zeilen rausgenommen.

z.B
- Bild laden
- OP1, OP2 , OP3 ausführen
- Speichern "OP1; OP2;, OP3" wird angefügt.
- nochmal speichern: "OP1; OP2;, OP3" wird nicht nocheinmal angefügt.
- OP4 durchführen
- nochmal speichern: "OP1; OP2;, OP3; OP4" wird angefügt.
Die schritte der Multidialoge sollten eigendlich im LOG einzeln vorkommen.
Ich teste noch mal strukturiert 8)

hhoefling hat gesagt.:
2.) Es wird nur immer der Kompressionsfaktor des letzen Speicherns an das Ende des
Kommentarfeldes gesetzt.

Du meinst es sollen alle KF's gesammelt werden?
War nur eine Idee - vielleicht wäre das von Interesse.
Andere Meinungen ?


viele Grüße

Thorsten
 

hhoefling

Mitglied
Dabei seit
02.01.04
Beiträge
3.994
Standort
NRW/Ruhrgebiet
Trophäen
4! 2*
#7
Wie schon an andere Stelle erwähnt hat das Script noch ein grosses Manko,
für das ich keine Lösung parat habe.

Das UNDO und seine Folgen.

Wenn ich eine Zwischenspeicherung durchführe, somit das LOG bis zu dieser Stelle in das
Bild schreibe, dann mit UNDO in FF zurückgehe und noch einmal Speichere,
dann stehen die "geUNDOten" Schritte immer noch im Bild.
Um dies zu verhindern müste entweder:
- nach dem Speichern die UNDO History gelöscht werden. Kann durch neuladen des Bildes erreicht werden, dann kann ich aber nicht mehr zurück :eek:
- Joachim mir beim Speichern statt der "zuletzt gespeicherten EXIF" die Orginal-EXIF's vom Start der Berabeitung liefern, damit ich daran das korrekte LOG anhängen kann. :D

Also entweder mit neuladend des Bildes, oder durch Editieren des Kommentarfeldes dem Problem begegnen.
Das herauslöschen von "geUNDOten" Bearbeitungsschritten ist immer noch einfacher,
als das händische Schreiben der Liste.
Oder Joachim weichklopfen, bis er FF_GetExifOrg(x) zur Verfügung stellt. 8)
 
Dabei seit
02.12.02
Beiträge
1.546
Standort
Lübeck
#8
Hallo, Heinz

Ein paar Macken sind mir aufgefallen:

Da Du die automatische Konfiguration zulässt und das Script damit in der F10-Liste erscheint (Was soll das dort eigentlich???), musst Du damit rechnen, daß jemand versucht, das Script von Hand auszuführen.
Effekt: Bei ungeladenem Bild kommt eine Load_Exif-Fehlermeldung. In Zeile 7 ist var name nicht besetzt.

Beim Speichern von Bildern ohne EXIF-Daten kommt eine Messagebox sinngemäß "Keine Exif-Daten" vorhanden, das ist heiße Luft.
Die Alternative wäre, die Anlage von EXIF-Daten anzubieten, was bei Bildern vom Scanner für den einen oder anderen möglicherweise interessant wäre. Ich bin dieser Tage auf einen Thread in einem Fotoforum hingewiesen worden, wo händeringend ein Tool gesucht wurde, das das kann. Vielleicht möchtest Du das einbauen?

Beim Start sollte die FF-Version abgeklopft werden (FF_GetMajor/-Minor/-Build), da sonst das Script u.U. bereits in Zeile 6 sein seliges Ende findet (GetImageName(-1)).

Gruß Jochen
 

hhoefling

Mitglied
Dabei seit
02.01.04
Beiträge
3.994
Standort
NRW/Ruhrgebiet
Trophäen
4! 2*
#9
Jochen hat gesagt.:
Da Du die automatische Konfiguration zulässt und das Script damit in der F10-Liste erscheint (Was soll das dort eigentlich???), musst Du damit rechnen, daß jemand versucht, das Script von Hand auszuführen.
Effekt: Bei ungeladenem Bild kommt eine Load_Exif-Fehlermeldung. In Zeile 7 ist var name nicht besetzt.
Wer es nicht als SpeicherScript nutzt, der kann es Manuell vor dem Speichern mit F10 aufrufen.
Und wie die Fehlermeldung in Javascript abzufangen ist, lasse ich mir gerne erklären/zeigen ;)


Jochen hat gesagt.:
Beim Speichern von Bildern ohne EXIF-Daten kommt eine Messagebox sinngemäß "Keine Exif-Daten" vorhanden, das ist heiße Luft.
Die Alternative wäre, die Anlage von EXIF-Daten anzubieten, was bei Bildern vom Scanner für den einen oder anderen möglicherweise interessant wäre. Ich bin dieser Tage auf einen Thread in einem Fotoforum hingewiesen worden, wo händeringend ein Tool gesucht wurde, das das kann. Vielleicht möchtest Du das einbauen?
Ja, anlegen ist eine gute Sache, nur wie?
@JKS: kann ich FF_SetExif/FF_SaveExif ohne vorheriges FF_LoadExif verwenden?
@JKS: kann vom Script aus ein "leeres Exif" erzeugt werden?

Jochen hat gesagt.:
Beim Start sollte die FF-Version abgeklopft werden (FF_GetMajor/-Minor/-Build), da sonst das Script u.U. bereits in Zeile 6 sein seliges Ende findet (Get_ImageName(-1)).
Und der darauf folgende Blick in die Docu klärt den Fehler dann auf ;D
 
Dabei seit
02.12.02
Beiträge
1.546
Standort
Lübeck
#10
Wer es nicht als SpeicherScript nutzt, der kann es Manuell vor dem Speichern mit F10 aufrufen.
Unvermuteter Doppelnutzen :). Aber auch da sollte man nicht mit einer Fehlermeldung scheitern.

Und der darauf folgende Blick in die Docu klärt den Fehler dann auf
Muß doch nicht sein. (FF_GetMajor/-Minor/-Build) abfragen, dann weißt Du es doch.

Und

If Trim(FF_GetImageName(-1))="" Then
MsgBox "Da ist nix geladen"
End If

lässt sich sicher auch in js so oder ähnlich formulieren.

Gruß Jochen


EDIT:

@JKS: kann ich FF_SetExif/FF_SaveExif ohne vorheriges FF_LoadExif verwenden?
FF_SetExifTag(...) -> TRUE
FF_SaveExif(...) -> FALSE

Geht also noch nicht.

@JKS: kann vom Script aus ein "leeres Exif" erzeugt werden?
Anscheinend noch nicht, aber das es aus dem Menu heraus geht, sollte es kein Problem sein, das zu implementieren. Joachim wird es sicher richten :).
 
H

Hippo6

Gast
#12
Ich hab noch nicht in Alltagsgebrauch getestet, aber wo ihr gerade bei den Meldungen seid:
Die Fehlermeldung der Bilderliste (Ist doch eine Fehlermeldung, oder...?) irritiert, wenn ich beim ersten Bild bin und meine Arbeit beginne.
Schreib doch in die Meldung die Bedingung, dass es funktioniert.
Wie krieg ich eine Bilderliste mit 2...100 in Gange, wenn ich bei Bild 1 die Meldung kriege?
Oder liegt's nur am Häkchen beim Script-Start?

Die Bilderliste ist wirklich eine gute Idee. Kann ich gut gebrauchen.

Lob für die Unterbringung von <Models>. Da braucht's natürlich keine INI-Datei mehr :)

Hakelig seit Version 1 sind Abweichungen des <Copyright1> von <Artist>.
Ich hab in <Copyright1> z. B. einen Zusatz " - Hamburg", ;) damit man mich auch findet, wenn das Bild mal irgendwo auftaucht :)
Die Übernahme von CArtist nach CCopyr ist zwar praktisch, überschreibt + verhindert aber andere Angaben.

Ich hatte in V1+2 CCopyr mit dem vollen Eintrag belegt. Die Übernahme des Jahres ist sinnvoll, wird aber durch CCopyr voll überschrieben und ich möchte auf Jahr nicht verzichten.
Vielleicht lässt sich ja noch was mit einer zweiten Variable und IF noch was deichseln?
In Options!?

Und schade, dass du das ganze Log jetzt wieder in <Software> gepackt hast. Ich meinte, dass da nur FixFoto+Version reingehört und der Rest in <UserComment> bleiben kann und sollte.

Dann noch etwas zur Installation:
FF lässt die Script-Installation auch in Unterverzeichnissen von \Script\ zu.
Der Aufruf der Hilfe sollte deshalb lokal erfolgen. Die HTML wird da liegen, wo das Script liegt. Bei mir z. B. in FF-Path\Script\Speichern unter\
Dort wird saver3.html aber nicht gefunden.
Ansonsten musst du noch entsprechende Anweisungen in die Hilfe schreiben.

Erstmal reicht's ;)
 

Rabe

Mitglied
Dabei seit
11.11.03
Beiträge
1.615
Trophäen
{*!!} **** !!!!! & ¡¡ [*]!
#14
Hallo Heinz,

tolles Script!

(und gut dokumentiert)

Danke für V3

mit Vorfreude auf V4 am Samstag...


Herzliche Grüße

Rabe

Die Alertbox: Dieses Bild enthält keine Exifdaten
Verrät nicht: Bildspeicherung erfolgt (dennoch) ohne Exifdaten. ;)
 

JKS

FF-Team
Dabei seit
06.06.02
Beiträge
6.712
#15
V2.76 B49: FF_CreateExif() erzeugt leere Exifdaten für das geladene Bild.
 
Dabei seit
02.12.02
Beiträge
1.546
Standort
Lübeck
#16
Knapp geschafft. Hatte schon Sorge, daß ich wieder mit dem Posting nicht fertig bin, bevor Du die Lösung bringst :).

Gruß Jochen


@Heinz

Willst Du die Eintragung für Bilder machen, die noch gar keinen EXIF-Eintrag haben?
Dann ist es allerdings mit ein paar mehr oder weniger nutzlosen History-Einträgen nicht getan, sondern die ganze EXIF-Latte muß angeboten werden. Das ist bei von Negativ-/Diafilm gescannten Bildern sicher für diejenigen sehr interessant, die immer akribisch ihre Aufnahmedaten aufgezeichnet haben.

Gruß Jochen

EDIT: Womit ist eigentlich begründet, daß die Anzahl der Bilder in der Bilderliste innerhalb eines eingeschränkten Bereiches liegen muß?
 

W.P.

Mitglied
Dabei seit
16.10.02
Beiträge
5.099
Standort
Anzing BY
#17
hhoefling hat gesagt.:
...Und wie die Fehlermeldung in Javascript abzufangen ist, lasse ich mir gerne erklären/zeigen ...
Code:
try {
   tryStatements}
catch(exception){
   catchStatements}
finally {
   finallyStatements}
Näheres siehe in der Hilfe Datei (Windows Script Technologies) von WSH unter Index "try...catch...finally"

Schönen Gruß,

Werner.
 

hhoefling

Mitglied
Dabei seit
02.01.04
Beiträge
3.994
Standort
NRW/Ruhrgebiet
Trophäen
4! 2*
#18
W. hat gesagt.:
Code:
try {
   tryStatements}
catch(exception){
   catchStatements}
finally {
   finallyStatements}
Das will bei mir partou nicht funktionieren,
die Exception kommt dann später, mit der Fehlerzeile hinter dem Catch-Block.
Der Catch-Block selbst wird nicht ausgeführt!. (WXP)
 

hhoefling

Mitglied
Dabei seit
02.01.04
Beiträge
3.994
Standort
NRW/Ruhrgebiet
Trophäen
4! 2*
#19
Im Downloadbereich ist ein Update (saver32.zip)
( ab Beta49 )
- Options Dialog aktualliesiert Hauptdialog
- Model-Tag immer sichtbar.
- Bessere Fehlerprüfung
- Exif kann angelegt werden
- Prüft FF Version.
- Sucht saver3.html im gleichen Verzeichniss wie das Script

@W.P (ohne try,catch... klappt bei mir nicht)
 

hhoefling

Mitglied
Dabei seit
02.01.04
Beiträge
3.994
Standort
NRW/Ruhrgebiet
Trophäen
4! 2*
#20
Jochen hat gesagt.:
Willst Du die Eintragung für Bilder machen, die noch gar keinen EXIF-Eintrag haben?
Dann ist es allerdings mit ein paar mehr oder weniger nutzlosen History-Einträgen nicht getan, sondern die ganze EXIF-Latte muß angeboten werden. Das ist bei von Negativ-/Diafilm gescannten Bildern sicher für diejenigen sehr interessant, die immer akribisch ihre Aufnahmedaten aufgezeichnet haben.
Erst mal überhaupt ein EXIF Segment haben, damit meine Felder abspeicherbar sind!.
Und nutzlos sind die wenigen Daten ja nun auch nicht, oder?
Du darfst ja gerne selbst per "Import" für bessere Daten sorgen.

EDIT:
Das ist eine Aufgabe für ein eigenes (Sub)-Script.



Jochen hat gesagt.:
Womit ist eigentlich begründet, daß die Anzahl der Bilder in der Bilderliste innerhalb eines eingeschränkten Bereiches liegen muß?
Keine Begründung, ausser das die Liste auf diese weise übersichtlich bleibt, und nicht ins Uferlose wächst.
Ich benutze 30 als Default, dann spare ich mir das rausräumen der Bilder die ich vor Wochen/Tagen bearbeitet habe.
Wenn du pro Tag mehr als 100 Bilder bearbeitest dann darfst du gerne die Fehlerprüfung auf "2...10000" abändern :)
 
Oben