Photoshop でフォルダ内の画像を解像度を変えて書き出し

概要

  • 変換元フォルダの画像(.eps)を解像度を下げて変換先フォルダに保存します。
  • 変換後はファイル名の末尾に「追加文字」が付きます。
  • 「アクション」と「バッチ処理」で同様なことができるみたい。

ソース

  • filedownSample.zip
    すべてを展開すべてを収束
      1
      2
      3
      4
      5
      6
      7
      8
      9
     10
     11
     12
     13
     14
     15
     16
     17
     18
     19
     20
     21
     22
     23
     24
     25
     26
     27
     28
     29
     30
     31
     32
     33
     34
     35
     36
     37
     38
     39
     40
     41
     42
     43
     44
     45
     46
     47
     48
     49
     50
     51
     52
     53
     54
     55
     56
     57
     58
     59
     60
     61
     62
     63
     64
     65
     66
     67
     68
     69
     70
     71
     72
     73
     74
     75
     76
     77
     78
     79
     80
     81
     82
     83
     84
     85
     86
    
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
    -
    |
    |
    |
    |
    |
    |
    |
    |
    |
    |
    |
    |
    |
    |
    |
    -
    |
    |
    |
    |
    |
    |
    -
    -
    |
    !
    |
    |
    -
    |
    !
    |
    |
    -
    |
    !
    |
    |
    |
    |
    !
    !
    -
    |
    !
    |
    |
    -
    |
    -
    |
    !
    !
     
     
     
     
    
     // 解像度変換
     // by TakeAsh
     // 2010/03/18
     
     #target 'Photoshop'
     #includepath "~/Local Settings/Application Data/Adobe/JavaScript/"
     #include "ominoDialogMaker.jsx" // http://omino.com/sw/ominoAdobeScriptsSuite/shared/ominoDialogMaker.jsx
     #include "getTargetFile.jsx"
     #include "getEpsOptions.jsx"
     
     var srcFolder = '~';
     var dstFolder = '~';
     var destResolution = 72;
     
     var ext = '.eps';
     var modName = 's';
     
     app.displayDialog = DialogModes.ERROR;
     
     var omd = newOminoDialog( '解像度変換' );
     omd.boxedText( 2, "変換元フォルダの画像("+ext+")を解像度を下げて変換先フォルダに保存します。\n" 
         + "変換後はファイル名の末尾に「追加文字」が付きます。" );
     omd.selectFolder( '変換元フォルダ', 'srcFolder', srcFolder, '変換元フォルダを選択してください。' );
     omd.selectFolder( '変換先フォルダ', 'dstFolder', dstFolder, '変換先フォルダを選択してください。' );
     omd.number( '解像度', 'destResolution', destResolution );
     omd.string( '追加文字', 'modName', modName );
     var result = omd.run();
     
     if ( result != null ){
         srcFolder        = result[ 'srcFolder'        ];
         dstFolder        = result[ 'dstFolder'        ];
         destResolution    = result[ 'destResolution'    ];
         modName            = result[ 'modName'            ];
     
         var originalUnit = preferences.rulerUnits;
         preferences.rulerUnits = Units.MM;
     
         var win = new Window( 'palette', '解像度変換', [100, 100, 210, 170] );
         win.msg        = win.add( 'statictext', [8, 8, 100, 30], '0/0' );
         win.abort    = win.add( 'button', [8,30, 100, 56], '中断' );
         win.abort.onClick = function(){ this.parent.aborted = true; };
         win.aborted    = false;
         win.show();
     
         try {
             srcFolder = new Folder( srcFolder );
             var fileList = srcFolder.getFiles( '*' + ext );
             var goal = fileList.length;
             var options = getEpsOptions();
             var postfix = '/' + goal;
     
             for( var i=0; i<goal; ++i ){
                 if ( win.aborted ){
                     break;
                 }
                 win.msg.text = i + postfix;
                 open( fileList[i] );
                 if ( activeDocument.resolution > destResolution ){
                     activeDocument.resizeImage( null, null, destResolution, ResampleMethod.BICUBIC );
                 }
                 var fName = fileList[i].name;
                 var dot = -1;
                 if ( (dot = fName.lastIndexOf('.')) >= 0 ){
                     fName = fName.substring(0, dot);
                 }
                 fName += modName;
                 var targetFile = getTargetFile( fName, ext, dstFolder);
                 activeDocument.saveAs( targetFile, options, true, Extension.LOWERCASE );
                 app.activeDocument.close( SaveOptions.DONOTSAVECHANGES );
             }
         }
         catch(e) {
             alert( e.message, 'スクリプト警告', true);
         }
     
         preferences.rulerUnits = originalUnit;
         if ( win.aborted ){
             alert( '中断されました。' );
         } else {
             app.beep();
         }
     }
     
     app.displayDialog = DialogModes.ALL;
     
     // EOF
    

添付ファイル: filedownSample.zip 206件 [詳細]

リロード   新規 下位ページ作成 編集 凍結 差分 添付 コピー 名前変更   ホーム 一覧 検索 最終更新 バックアップ リンク元   ヘルプ   最終更新のRSS
Last-modified: Sun, 04 Dec 2011 19:21:48 JST (2451d)