Benutzer-Werkzeuge

Webseiten-Werkzeuge


ff_include

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige ÜberarbeitungVorherige Überarbeitung
ff_include [2018/07/28 10:09] michaelff_include [2026/09/10 06:53] (aktuell) – gelöscht - Externe Bearbeitung (Datum unbekannt) 127.0.0.1
Zeile 1: Zeile 1:
-====== Beispielscript für den Include-Mechanismus von FixFoto ====== 
-\\  Mit Hilfe der **FF_INCLUDE** Anweisung lassen sich Scripte auf mehrere Dateien aufteile. Auch lassen sich damit Funktionen, die\\  man in mehreren Scripten benötigt, auslagern.\\ \\  Um einfacher mit einem externen Editor arbeiten zu können, teile ich meine Script oft in zwei Teile. Der eine wird in FF Im Scripteditor geöffnet. \\  Der zweite Teil wird mit dem externen Editor bearbeitet und von FF dann per **FF_INCLUDE** Befehl dazu geladen. \\ \\  Aufpassen muss man nur bei der Weitergabe des Scriptes. Da es nicht mehr nur eine Datei ist, muss eine ZIP Datei erstellt werden,\\  die dann in FixFoto importiert/installiert werden kann.\\ \\  Hier das Hauptscript, das in FF eingebunden wird und auch die Dialogdefinitionen enthält. \\   
  
-<code JavaScript [enable_line_numbers="true"] Fix35Kb.js> 
-  //FFSubmenu=Canon 
-  //FFName=Fix35Kb_include 
-  //FFInclude=Fix35Kb_main.js 
-  // 
-  // Autor: Heinz Höfling 
-  // 
- 
-  function makemaindialog() 
-  { 
-  //** Start Dialog Canon KB35.. ** 
-  FF_AddDialog("Canon KB35..",185,113); 
-  FF_AddControl("Canon KB35..","prog","PROGRESS",83,69,97,11); 
-  FF_AddControl("Canon KB35..","vorschau","IMAGE",1,1,79,79); 
-  FF_AddControl("Canon KB35..","aktfile","SLEDIT",2,89,178,10); 
-  FF_SetControlStyle("Canon KB35..","aktfile",2048); 
-  FF_AddControl("Canon KB35..","  Abbruch mit ESC-Taste ","STATIC",98,30,62,22); 
-  FF_SetControlStyle("Canon KB35..","  Abbruch mit ESC-Taste ",4096); 
-  FF_AddControl("Canon KB35..","Aktuelle Datei:","STATIC",4,81,41,7); 
-  FF_AddControl("Canon KB35..","© 2009 Heinz Höfling V:1.5 ","STATIC",0,101,70,7); 
-  FF_AddControl("Canon KB35..","(Hierzu eventuell vorher Fixfoto","STATIC",91,54,81,7); 
-  FF_AddControl("Canon KB35..","über die Taskleiste aktivieren)","STATIC",94,60,86,6); 
-  FF_AddControl("Canon KB35..","Start","BUTTON",125,101,53,10); 
-  FF_AddControl("Canon KB35..","In den selectierten Bildern wird die","STATIC",87,2,96,11); 
-  FF_AddControl("Canon KB35..","35mm Brennweite nachgetragen","STATIC",86,12,97,11); 
-  //** End Dialog Canon KB35.. ** 
-  return "Canon KB35.."; 
-  } 
- 
-  if( FF_GetImageCount() > 0  ) 
-    Main(); 
-  else FF_MessageBox("Keine Bilder selektiert.",1); 
-</code> 
-   
-    
-Und hier das Include-Script, das die eigentliche Arbeit erledigt.  
- 
-<code JavaScript [enable_line_numbers="true"] Fix35Kb_main.js> 
-  //---------------------------- 
-  // Die eigendliche Bearbeitung ist hier 
-  //---------------------------- 
- 
-  function BearbeiteEinBild(cImageName) 
-  { 
-   var result=false; 
-   if( FF_LoadExif(cImageName)  && FF_HasExif() ) 
-    { 
-      if (   (FF_GetExifTag("Model") == "Canon EOS 400D DIGITAL") 
-          && (FF_GetExifTag("FocalLengthIn35mmFilm") == "" ) 
-         ) 
-      { 
-        FF_SetExifTag("FocalLengthIn35mmFilm",  Math.round((1.61 * FF_GetExifTagAdvanced("FocalLength") ),0) ); 
-           FF_SaveExif(cImageName); 
-           result=true; 
-      } 
-    } 
-    return result; 
-  } 
- 
-  //====================================================================================== 
- 
-  function Shorten(s, maxlen) 
-  { 
-     var r = new String(s); 
-     if(  r.length> maxlen ) 
-          r = r.substring(0,5) + "..." + r.substring( r.length-maxlen , r.length); 
-     return r; 
-  } 
- 
-  //====================================================================================== 
-  // Main 
-  //====================================================================================== 
-  function Main() 
-  { 
-  var dlg = makemaindialog(); 
-  var nCurrent; 
-  var cImageName=""; 
-  var NumImages = FF_GetImageCount(); 
-  var doneImmages=0; // bis zum evtl. abbruch 
-  var aborted=false; 
-  var r; 
- 
-  FF_SetProgressText(0, NumImages,""); 
-  FF_SetControl(dlg,"aktfile",""); 
-  try 
-   { 
-    FF_OpenDialog(dlg); 
-    for(r=""; ; ) 
-    { 
-     r=FF_ShowDialog(dlg); 
-     if (r=="CANCEL") break; 
-     if (r=="Start") break; 
-    } 
-    if (r=="Start") 
-    { 
-     for ( nCurrent = 0 ; nCurrent < NumImages ; nCurrent++ ) 
-     { 
-      var key=FF_CheckKey(); 
-      if (key==27) 
-        { 
-         if (FF_MessageBox("Script abbrechen?",4)==6) 
-           { 
-            aborted=true; 
-            break; 
-           } 
-        } 
-      cImageName    =  FF_getImageName(nCurrent); 
-      FF_SetProgressText(nCurrent, NumImages,cImageName); 
-      FF_SetControl(dlg,"prog",(100/NumImages*(nCurrent+1))); 
-      var msg = ""  + (nCurrent+1)+" von "+NumImages + "  " + Shorten(cImageName,40); 
-      FF_SetControl(dlg,"aktfile",msg); 
-      FF_LoadThumb(cImageName); 
-      FF_SetControl(dlg,"vorschau",0); 
-      FF_RefreshDialog(dlg); 
-       // Aktion..... 
-      if( BearbeiteEinBild(cImageName) ) 
-         doneImmages++; 
-    }  // for 
-    FF_RefreshDialog(dlg); 
-    } // if 
-   } // try 
-   catch(e) 
-   { 
-     var msg="Script-Fehler:\r\n"; 
-     msg = msg + e + "\r\n"; 
-     msg = msg + "Fehler Nr.: 0x" + (e.number & 0x1FFFFFFF).toString(16).toUpperCase() +"\r\n"; 
-     msg = msg + e.description+"\r\n\r\n"; 
-     msg=msg+"Aktuelle Datei:\r\n"+cImageName; 
-     FF_Messagebox(msg,16); 
-    } 
-   finally 
-   { 
-    FF_CloseDialog(dlg); 
-   } 
- 
-   if( r=="Start") 
-   { 
-     if (aborted) 
-        msg="Abbruch" 
-     else msg="Fertig"; 
-     FF_MessageBox("Selektierte Bilder: "+NumImages+"\r\n"+ 
-                    "davon bearbeitet  : "+doneImmages+"\r\n"+msg,64); 
-   } 
-  } 
-</code>   
-\\  Zur Funktion des Scriptes:\\  Das Script korrigiert in Bildern der Canon EOS400D die KB-äquivalente Brennweite, in dem es den Cropfaktor 1.61 einrechnet. Bei mir macht das zwar schon das Karten-Einlesescript aber für den Fall, das ich die Bilder doch mal per Explorer auf den Rechner kopiere, kann ich mit diesem Script den Wert nachtragen lassen. 
ff_include.1532765360.txt.gz · Zuletzt geändert: (Externe Bearbeitung)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki