4
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

最速で画像をリサイズする

Last updated at Posted at 2019-11-06

(MacOSです。)

変換するの面倒...
ターミナルからリサイズできるけどいちいちコマンド覚えてない...
と思って、簡単に実行できるようにしたので紹介します。

何をするか

ターミナルで一発でリサイズできるように、シェルスクリプトを作っておきます。
完了するとこんな感じに変換できるようになります。
movie.gif

順を追って、方法を紹介します。

1. シェルスクリプトを書いたファイルを作成

画像のリサイズには「sips」コマンドを使用します。
リサイズする場合は

sips -Z 縮小後の横幅 画像ファイル -o 出力先

こんなかんじ。

ファイルを作成し、コマンドをそこに保存しましょう。
今回は「resize」という名前でファイルを作成し、以下のコマンドを保存しました。
(このファイル名が、最終的に呼び出す時のコマンドになります)

resize
#!/bin/bash
fileName=`basename $1`
name=${fileName%.*}
extension=${fileName##*.}

sips -Z $2 $1 -o ~/Desktop/$name-r.$extension
echo "Saved to desktop."

$ toGif 動画のパスの形式で実行する事を想定しています。
$name.gifの拡張子を変えれば他の形式に変換することもできます。
(MP4とか…それ以外浮かばないけど…)

少しだけ解説

fileName=`basename $1` では、
第一引数($1)として受け取ったファイルパスからファイル名を取り出し、
name=${fileName%.*}でファイル名のみ、
extension=${fileName##*.}で拡張子のみ取り出しています。

sips -Z $2 $1 -o ~/Desktop/$name-r.$extension
ここでは、サイズとファイルを指定してリサイズしています。
保存先はデスクトップ、ファイル名は元のものに「-r」をつけたものを指定しています。

2. パスを通す

作成したファイルにパスを通します。(→ コンソールから呼び出せるようにします)
パスを通すにはホームディレクトリにある.bash_profileに、以下を追記します。
.bash_profileは、ログイン時に一度実行されるファイル的なものです。(認識間違っていたら教えて下さい)

export PATH=$PATH:作ったファイルのパス

私はDocuments下にscriptというフォルダを作り、そこにパスを通しているので

export PATH=$PATH:~/Documents/script

こんな感じのものを追記してあります。

(その他作成したシェルスクリプトもそこにまとめてあります。いちいちパス通し直さなくていいのでおすすめです。)

.bash_profileを更新した後は、

source ~/.bash_profile

で再読み込みしましょう。

以上で、コンソールから最速(?)で画像をリサイズできるようになりました。おめでとうございます。


もしよければ「いいね」していただけると喜びます。
類似記事の「最速で動画をGifに変換する」もどうぞ。

「もっとこうしたほうがいいよ!!」「これもおすすめだよ!!」などあればぜひお教えください。
ありがとうございました。

4
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?