Advertisement
Guest User

Auto-Levels

a guest
Nov 8th, 2011
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. var docRef = activeDocument
  2.  
  3. var a=docRef.channels[0]
  4.  
  5. // Finde Minimum
  6.  
  7. RLevel = 0
  8. // for (RLevel = 0; RLevel <= 255; RLevel ++) { if (docRef.channels[0].histogram[RLevel]) { break; } }
  9.  
  10. // Finde Maximum
  11.  
  12. LLevel = 255
  13. for (LLevel = 255; LLevel >= 0; LLevel --) { if (docRef.channels[0].histogram[LLevel]) { break; } }
  14.  
  15. // Auto-Levels
  16.  
  17. var idMk = charIDToTypeID( "Mk  " );
  18.     var desc3 = new ActionDescriptor();
  19.     var idnull = charIDToTypeID( "null" );
  20.         var ref1 = new ActionReference();
  21.         var idAdjL = charIDToTypeID( "AdjL" );
  22.         ref1.putClass( idAdjL );
  23.     desc3.putReference( idnull, ref1 );
  24.     var idUsng = charIDToTypeID( "Usng" );
  25.         var desc4 = new ActionDescriptor();
  26.         var idNm = charIDToTypeID( "Nm  " );
  27.         desc4.putString( idNm, "Auto-Tonwertkorrektur" );
  28.         var idType = charIDToTypeID( "Type" );
  29.             var desc5 = new ActionDescriptor();
  30.             var idpresetKind = stringIDToTypeID( "presetKind" );
  31.             var idpresetKindType = stringIDToTypeID( "presetKindType" );
  32.             var idpresetKindDefault = stringIDToTypeID( "presetKindDefault" );
  33.             desc5.putEnumerated( idpresetKind, idpresetKindType, idpresetKindDefault );
  34.         var idLvls = charIDToTypeID( "Lvls" );
  35.         desc4.putObject( idType, idLvls, desc5 );
  36.     var idAdjL = charIDToTypeID( "AdjL" );
  37.     desc3.putObject( idUsng, idAdjL, desc4 );
  38. executeAction( idMk, desc3, DialogModes.NO );
  39.  
  40. var idsetd = charIDToTypeID( "setd" );
  41.     var desc6 = new ActionDescriptor();
  42.     var idnull = charIDToTypeID( "null" );
  43.         var ref2 = new ActionReference();
  44.         var idAdjL = charIDToTypeID( "AdjL" );
  45.         var idOrdn = charIDToTypeID( "Ordn" );
  46.         var idTrgt = charIDToTypeID( "Trgt" );
  47.         ref2.putEnumerated( idAdjL, idOrdn, idTrgt );
  48.     desc6.putReference( idnull, ref2 );
  49.     var idT = charIDToTypeID( "T   " );
  50.         var desc7 = new ActionDescriptor();
  51.         var idAdjs = charIDToTypeID( "Adjs" );
  52.             var list1 = new ActionList();
  53.                 var desc8 = new ActionDescriptor();
  54.                 var idChnl = charIDToTypeID( "Chnl" );
  55.                     var ref3 = new ActionReference();
  56.                     var idChnl = charIDToTypeID( "Chnl" );
  57.                     var idChnl = charIDToTypeID( "Chnl" );
  58.                     var idCmps = charIDToTypeID( "Cmps" );
  59.                     ref3.putEnumerated( idChnl, idChnl, idCmps );
  60.                 desc8.putReference( idChnl, ref3 );
  61.                 var idAuCo = charIDToTypeID( "AuCo" );
  62.                 desc8.putBoolean( idAuCo, true );
  63.                 var idBlcC = charIDToTypeID( "BlcC" );
  64.                 desc8.putDouble( idBlcC, 0.000000 );
  65.                 var idWhtC = charIDToTypeID( "WhtC" );
  66.                 desc8.putDouble( idWhtC, 0.000000 );
  67.             var idLvlA = charIDToTypeID( "LvlA" );
  68.             list1.putObject( idLvlA, desc8 );
  69.         desc7.putList( idAdjs, list1 );
  70.     var idLvls = charIDToTypeID( "Lvls" );
  71.     desc6.putObject( idT, idLvls, desc7 );
  72. executeAction( idsetd, desc6, DialogModes.NO );
  73.  
  74. // Stellt die Ebene in den Modus "Aufhellen"
  75.  
  76. var idsetd = charIDToTypeID( "setd" );
  77.     var desc5 = new ActionDescriptor();
  78.     var idnull = charIDToTypeID( "null" );
  79.         var ref2 = new ActionReference();
  80.         var idLyr = charIDToTypeID( "Lyr " );
  81.         var idOrdn = charIDToTypeID( "Ordn" );
  82.         var idTrgt = charIDToTypeID( "Trgt" );
  83.         ref2.putEnumerated( idLyr, idOrdn, idTrgt );
  84.     desc5.putReference( idnull, ref2 );
  85.     var idT = charIDToTypeID( "T   " );
  86.         var desc6 = new ActionDescriptor();
  87.         var idMd = charIDToTypeID( "Md  " );
  88.         var idBlnM = charIDToTypeID( "BlnM" );
  89.         var idLghn = charIDToTypeID( "Lghn" );
  90.         desc6.putEnumerated( idMd, idBlnM, idLghn );
  91.     var idLyr = charIDToTypeID( "Lyr " );
  92.     desc5.putObject( idT, idLyr, desc6 );
  93. executeAction( idsetd, desc5, DialogModes.NO );
  94.  
  95. // Anti-Auto-Levels
  96.  
  97. var idMk = charIDToTypeID( "Mk  " );
  98.     var desc9 = new ActionDescriptor();
  99.     var idnull = charIDToTypeID( "null" );
  100.         var ref4 = new ActionReference();
  101.         var idAdjL = charIDToTypeID( "AdjL" );
  102.         ref4.putClass( idAdjL );
  103.     desc9.putReference( idnull, ref4 );
  104.     var idUsng = charIDToTypeID( "Usng" );
  105.         var desc10 = new ActionDescriptor();
  106.         var idNm = charIDToTypeID( "Nm  " );
  107.         desc10.putString( idNm, "Anti-Auto-Tonwertkorrektur" );
  108.         var idType = charIDToTypeID( "Type" );
  109.             var desc11 = new ActionDescriptor();
  110.             var idpresetKind = stringIDToTypeID( "presetKind" );
  111.             var idpresetKindType = stringIDToTypeID( "presetKindType" );
  112.             var idpresetKindDefault = stringIDToTypeID( "presetKindDefault" );
  113.             desc11.putEnumerated( idpresetKind, idpresetKindType, idpresetKindDefault );
  114.         var idLvls = charIDToTypeID( "Lvls" );
  115.         desc10.putObject( idType, idLvls, desc11 );
  116.     var idAdjL = charIDToTypeID( "AdjL" );
  117.     desc9.putObject( idUsng, idAdjL, desc10 );
  118. executeAction( idMk, desc9, DialogModes.NO );
  119.  
  120. var idsetd = charIDToTypeID( "setd" );
  121.     var desc12 = new ActionDescriptor();
  122.     var idnull = charIDToTypeID( "null" );
  123.         var ref5 = new ActionReference();
  124.         var idAdjL = charIDToTypeID( "AdjL" );
  125.         var idOrdn = charIDToTypeID( "Ordn" );
  126.         var idTrgt = charIDToTypeID( "Trgt" );
  127.         ref5.putEnumerated( idAdjL, idOrdn, idTrgt );
  128.     desc12.putReference( idnull, ref5 );
  129.     var idT = charIDToTypeID( "T   " );
  130.         var desc13 = new ActionDescriptor();
  131.         var idpresetKind = stringIDToTypeID( "presetKind" );
  132.         var idpresetKindType = stringIDToTypeID( "presetKindType" );
  133.         var idpresetKindCustom = stringIDToTypeID( "presetKindCustom" );
  134.         desc13.putEnumerated( idpresetKind, idpresetKindType, idpresetKindCustom );
  135.         var idAdjs = charIDToTypeID( "Adjs" );
  136.             var list2 = new ActionList();
  137.                 var desc14 = new ActionDescriptor();
  138.                 var idChnl = charIDToTypeID( "Chnl" );
  139.                     var ref6 = new ActionReference();
  140.                     var idChnl = charIDToTypeID( "Chnl" );
  141.                     var idChnl = charIDToTypeID( "Chnl" );
  142.                     var idCmps = charIDToTypeID( "Cmps" );
  143.                     ref6.putEnumerated( idChnl, idChnl, idCmps );
  144.                 desc14.putReference( idChnl, ref6 );
  145.                 var idOtpt = charIDToTypeID( "Otpt" );
  146.                     var list3 = new ActionList();
  147.                     list3.putInteger( RLevel );
  148.                     list3.putInteger( LLevel );
  149.                 desc14.putList( idOtpt, list3 );
  150.             var idLvlA = charIDToTypeID( "LvlA" );
  151.             list2.putObject( idLvlA, desc14 );
  152.         desc13.putList( idAdjs, list2 );
  153.     var idLvls = charIDToTypeID( "Lvls" );
  154.     desc12.putObject( idT, idLvls, desc13 );
  155. executeAction( idsetd, desc12, DialogModes.NO );
  156.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement