画像最適化スクリプトの最終形態というか、
画像最適化スクリプト2は画像をそのままの大きさで「JPG最適化」しますが、画像最適化スクリプト3は「JPG最適化」+「縦横サイズ」を縮小します。
関連記事:
Downloadサイトのかなり下の方の「Windows Binary Release」で
Wondows 64bit の 2020.6.24 現在で最新版の
ImageMagick-7.0.10-21-Q16-HDRI-x64-dll.exe をダウンロードしてインストールしてください。
インストールフォルダ内の magick.exeのパスを各自メモして
【magick.exeのパス】を各々の環境で書き換えてください。
下記のコード内の「700x700」の意味はアスペクト比を変えずに幅、高さの最大値を700以下に縮小するということです。
なので、「700x700」の部分を自分が縮小しようとする「幅x高さ」に変えてください。
(「700x700>」の「>」を調べるのに苦労しました。)
で、先日のコードを修正。
== sample3.js - BEGIN =====================
var WsArg = WScript.Arguments; if ( WsArg.Count() == 0 ) WScript.Quit(); var fs = new ActiveXObject( "Scripting.FileSystemObject" ); var ws = new ActiveXObject("WScript.Shell"); var infiles = ""; for (i = 0; i < WsArg.Count(); i++) { var infile = WsArg(i); var ext = fs.GetExtensionName(infile); var infile2 = infile.replace(ext, "jpg"); if (ext.match(/(jpg)/i)) { infiles = infiles + " \"" + infile + "\""; } else if (ext.match(/(jpeg)/i)) { fs.MoveFile(infile, infile2); infiles = infiles + " \"" + infile2 + "\""; } else if (ext.match(/(png)|(bmp)|(webp)/i)) { var op = "\"" + infile + "\" /convert=\"" + infile2 + "\""; var app = 【i_view64.exeのパス】; ws.run(app + " " + op, 0, true); infiles = infiles + " \"" + infile2 + "\""; } } // ↓ここから // 注意事項: // 出力ファイル名は元の画像ファイルパスで aaa-0.jpg~aaa-n.jpg (nは整数)になります。 // 複数ファイルを選択して jsファイルにドロップしたときの引き渡される引数の順序は、 // ドラッグや右クリック時に、マウスポイントしたファイルが先頭で、残りは選択ファイルの並びで続きの順序なので // マウスポイントを選択ファイルの先頭ファイルにして、そこからドラッグや右クリックをすると // ファイル名 ( aaa-n.jpg ) の順番がくずれない。 var app2 = 【magick.exeのパス】; var outfile = "\"" + fs.GetParentFolderName(WsArg(0)) + "\\aaa.jpg\""; // 画像リサイズ(長辺を指定された縦横幅で収まるように調整。アスペクト比保持)・アンシャープ // 下のコード内の「700x700」の部分を自分が縮小しようとする「幅x高さ」に変えてください。 var op2 = " convert " + infiles + " -resize 700x700> -unsharp 1.5x1+0.7+0.02 " + outfile; ws.run(app2 + op2, 0, true); // 非表示、appの終了を待つ // ↑ここまで追記 var app1 = 【jpegoptim.exeのパス】; var op1 = infiles + " -q --strip-all --max=85 --all-progressive"; ws.run(app1 + " " + op1, 0, true); ws = null; fs = null;
== sample3.js - END ======================
使い方は同じで画像ファイルをドロップするだけ。
Imagemagick のアンシャープはかなりいいとおもいます。
私は上記の option で非常に気に入ってますが、各自パラメータを調節してください。
※ 自己責任にてご使用お願いします。
0 件のコメント:
コメントを投稿