
作業の自動化、バッチ処理mマクロ処理などがとても大好きな、ユゲタです。
繰り返しの作業は、プログラミングをする人であれば、
実生活の中でもfor文で繰り返し自動化を行いたい!と思ったことありませんか?
何かの作業をしている時に、少しでも類似作業があると(パソコンでの作業に限りますが)、それを自動化するプログラミングをやってしまうクセが昔からあって、
おかげで、そうした作業が無駄になって、本来かかる時間よりも多く費やしてしまって、効率が悪くなってしまうこともありますが、
基本的に、ユゲタが効率バッチプログラムを書かないのは、「締切が迫っていて手でやれば確実に完了する」場合のみで、それ以外は何かしらのプログラムを作って作業を進めているという事は、ココだけの秘密です。
Macなら画像一括処理が簡単にできる事を知らなかった話
とある会社の仕事をお手伝いしていた時、その会社さんはtoC向けにかなりアクセス数の大きいWEBサービスを展開していて、そのシステム基盤をリニューアルしているという作業のお手伝いだったんですが、
まだまだ序盤開発だったので、資料作成が多く、色々なwebページの画面を手作業でスクリーンショットしていたので、puppetterを使って、テキストに書かれたURLを一括で取得して、
その間にコーヒーを飲んでいられるというツールを作って対応していたのですが、
取得したwebページのスクリーンショット画像が、3桁ぐらいの数があり、たしかに人の手で作業したら、まる一日ぐらい掛かってしまうという所を、ツール作成4時間程、バッチ実行時間1時間程度という具合に完了することができました。
ちなみに、以後は、スクリーンショットをとる必要がある場合に、URLリストさえ作ってしまえば、コーヒーを飲んで待っていれば、簡単に全画面キャプチャを取ってくれるので、今後が楽しみです。
そして、そんな取得した画像はPNG形式、プロジェクトメンバーで共有するために、サーバーにアップロードしたのだが、少しストレージを圧迫するのでJPEGフォーマットにしたいとの事を言ってきた。
もちろん、バッチツールには、出力フォーマットタイプにjpeg形式で保存する仕様を加えたのは言うまでもないが、すでに取得されている画像をもう一回バッチを回すのも何だかいただけない。
ここは、画像フォーマット一括変換だ!と思ってツールを作成しようとしましたが、今一度踏みとどまって調べてみたら、なんとMacでは、画像フォーマット変換をOSの基本機能だけで行うことができるらしいではありませんか!
知らんかった
画像一括変換はフォルダアクション機能を使おう!
「フォルダアクション」という機能の使い方は、色々なページで説明されていますが、どれも古いOSでの説明ばかりだったので、作業が少し戸惑ってしまう点があったので、
2022年1月現在版を書きに解説しておきます。
とりあえず、今回は、
PNGの画像フォーマットをデスクトップにあるフォルダに入れたら、Jpegに自動変換するというフォルダアクションを作ってみます。
自動変換するフォルダの作成
デスクトップで右クリックしてフォルダを作っておきます。
この時に、わかりやすいように、「jpeg自動変換」としておくと良いでしょう。

※別にデスクトップでなくて、どこにフォルダを作っても良いんですが、わかりやすさのために、デスクトップにしてあるだけです。
フォルダを右クリックして、「フォルダアクション設定」を選択
サービスを確認ダイアログで「サービスを実行」を選択
Image-Duplicate as JPEG.scptを選択して「関連付ける」ボタンを押す。
アクセス確認ダイアログは「OK」を押しておく
「フォルダアクションを使用」にチェックを入れてウィンドウを閉じる

ここまでで設定は完了です。
フォルダの中に画面キャプチャしたPNGなどの画像を入れるとJPEGに自動変換してくれます。
そして、フォルダ内には、変換されたjpeg画像が入るフォルダが作られます。

元ファイルも、「Original Images」というフォルダが作られて、そこに入っています。
注意ポイント
恐らく初めてこの設定をした時に、次のようなエラーが表示されてしまいます。

これは、MacOSのOSアップデートに伴うセキュリティが強化されたために発生しているエラーで、
次のページにそのエラーの解消方法が書かれています。
https://lovemac.jp/5475
最後に
無事に画像の自動変換ができたということで、仕事もはかどりました。
この機能は、AppleScriptで書かれていて、このスクリプトは自分でも造ることができるので、
Macでスクリーンゃプチャした時に、画像解像度がRetinaディスプレイのため、144DPIになってしまうのですが、
わざわざプレビューツールの画像サイズでDPIと画像サイズを50%にするという作業をおこなっているのですが、これも一気にやってくれるjpeg変換に改造しておくとより効率的ですね。
画像変換の他にも、作業が捗るツールがデフォルトでもあるし、自作するのもありですね。
Macを使う人も増えてきて、DXも活発になってきているので、この辺をビジネス展開してみるのもアリ・・・と経営者視点で考えてみましたけど、まずは自分の効率化から・・・と・・・
0 件のコメント:
コメントを投稿