UJP - 技術情報1

Life is fun and easy!

不正IP報告数

Okan Sensor
 
メイン
ログイン
ブログ カテゴリ一覧

brewでImagemagickをインストールして使って見る

brewでImagemagickをインストールして使って見る


更新履歴

  • 初版 2016/06/23
  • 更新日 2017/12/04

はじめに

  • がぞ変換エンジンであるImageMagickをHomeBrewでインストールする.インストール時に依存関係のあるlibtool,jpeg,libpng,libfitt,freetypeも一緒にインストールされる.簡単で良い.
  • その後,複数のファイルを使ってGIFアニメを作成してみる.

インストール

  • パッケージマネージャとしてのHomeBrew上でのインストールなので検索して存在を確認した上でインストール.そしてパスとバージョン確認となる.

#code(command){{

brew search imagemagick

which convert

convert --version

}}

       MBA13:~ ujpadmin$ brew search imagemagick
       imagemagick
       homebrew/versions/imagemagick-ruby186
       MBA13:~ ujpadmin$ brew install imagemagick
       ==> Installing dependencies for imagemagick: libtool, jpeg, libpng, libtiff, f
       ==> Installing imagemagick dependency: libtool
       ==> Downloading https://homebrew.bintray.com/bottles/libtool-2.4.6.el_capitan.bottle.
       ######################################################################## 100.0%
       ==> Pouring libtool-2.4.6.el_capitan.bottle.tar.gz
       ==> Caveats
       In order to prevent conflicts with Apple's own libtool we have prepended a "g"
       so, you have instead: glibtool and glibtoolize.
       ==> Summary
       🍺  /usr/local/Cellar/libtool/2.4.6: 70 files, 3.7M
       ==> Installing imagemagick dependency: jpeg
       ==> Downloading https://homebrew.bintray.com/bottles/jpeg-8d.el_capitan.bottle.2.tar.
       ######################################################################## 100.0%
       ==> Pouring jpeg-8d.el_capitan.bottle.2.tar.gz
       🍺  /usr/local/Cellar/jpeg/8d: 19 files, 713.7K
       ==> Installing imagemagick dependency: libpng
       ==> Downloading https://homebrew.bintray.com/bottles/libpng-1.6.23.el_capitan.bottle.
       ######################################################################## 100.0%
       ==> Pouring libpng-1.6.23.el_capitan.bottle.tar.gz
       🍺  /usr/local/Cellar/libpng/1.6.23: 25 files, 1.2M
       ==> Installing imagemagick dependency: libtiff
       ==> Downloading https://homebrew.bintray.com/bottles/libtiff-4.0.6_1.el_capitan.bottl
       ######################################################################## 100.0%
       ==> Pouring libtiff-4.0.6_1.el_capitan.bottle.tar.gz
       🍺  /usr/local/Cellar/libtiff/4.0.6_1: 261 files, 3.4M
       ==> Installing imagemagick dependency: freetype
       ==> Downloading https://homebrew.bintray.com/bottles/freetype-2.6.3.el_capitan.bottle
       ######################################################################## 100.0%
       ==> Pouring freetype-2.6.3.el_capitan.bottle.tar.gz
       🍺  /usr/local/Cellar/freetype/2.6.3: 61 files, 2.5M
       ==> Installing imagemagick
       ==> Downloading https://homebrew.bintray.com/bottles/imagemagick-6.9.4-9.el_capitan.bott
       ######################################################################## 100.0%
       ==> Pouring imagemagick-6.9.4-9.el_capitan.bottle.tar.gz
       🍺  /usr/local/Cellar/imagemagick/6.9.4-9: 1,460 files, 17.9M
       MBA13:~ ujpadmin$
  • インストール完了.ファイルパスを確認する.
       MBA13:~ ujpadmin$ which convert
       /usr/local/bin/convert
       MBA13:~ ujpadmin$
  • バージョンを確認する.
       MBA13:~ ujpadmin$ convert --version
       Version: ImageMagick 6.9.4-9 Q16 x86_64 2016-06-13 http://www.imagemagick.org
       Copyright: Copyright (C) 1999-2016 ImageMagick Studio LLC
       License: http://www.imagemagick.org/script/license.php
       Features: Cipher DPC Modules
       Delegates (built-in): bzlib freetype jng jpeg ltdl lzma png tiff xml zlib
       MBA13:~ ujpadmin$

画像ファイルをリサイズする

  • この様な感じでファイルがある.
       MBA13:fami ujpadmin$ ls
       IMG_6506 のコピー.jpg		IMG_6599.jpg			IMG_6627.jpg
       IMG_6506.jpg			IMG_6600.jpg			IMG_6628.jpg
       IMG_6507.jpg			IMG_6601.jpg			IMG_6629.jpg
       IMG_6508.jpg			IMG_6602.jpg			IMG_6630.jpg
       IMG_6509.jpg			IMG_6603.jpg			IMG_6631.jpg
       IMG_6510.jpg			IMG_6604.jpg			IMG_6632.jpg
       IMG_6511.jpg			IMG_6605.jpg			IMG_6633.jpg
       IMG_6563.jpg			IMG_6606.jpg			IMG_6634.jpg
       IMG_6564.jpg			IMG_6607.jpg			IMG_6635.jpg
       IMG_6565.jpg			IMG_6608.jpg			IMG_6636.jpg
       IMG_6581.jpg			IMG_6609.jpg			IMG_6637.jpg
       IMG_6582.jpg			IMG_6610.jpg			IMG_6638.jpg
       IMG_6583.jpg			IMG_6611.jpg			IMG_6639.jpg
       IMG_6584.jpg			IMG_6612.jpg			IMG_6640.jpg
       IMG_6585.jpg			IMG_6613.jpg			IMG_6641.jpg
       IMG_6586.jpg			IMG_6614.jpg			IMG_6642.jpg
       IMG_6587.jpg			IMG_6615.jpg			IMG_6643.jpg
       IMG_6588.jpg			IMG_6616.jpg			IMG_6644.jpg
       IMG_6589.jpg			IMG_6617.jpg			IMG_6645.jpg
       IMG_6590.jpg			IMG_6618.jpg			IMG_6646.jpg
       IMG_6591.jpg			IMG_6619.jpg			IMG_6647.jpg
       IMG_6592.jpg			IMG_6620.jpg			IMG_6648.jpg
       IMG_6593.jpg			IMG_6621.jpg			IMG_6652.jpg
       IMG_6594.jpg			IMG_6622.jpg			IMG_6653.jpg
       IMG_6595.jpg			IMG_6623.jpg			IMG_6654.jpg
       IMG_6596.jpg			IMG_6624.jpg			IMG_6655.jpg
       IMG_6597.jpg			IMG_6625.jpg			IMG_6656.jpg
       IMG_6598.jpg			IMG_6626.jpg			IMG_6657.jpg
       MBA13:fami ujpadmin$
  • これを,300x533サイズに変換し,ファイル名を新たにつけて保存する.
       MBA13:fami ujpadmin$ convert IMG_6* -resize 300x533 RESIZE300_%03d.jpg
       MBA13:fami ujpadmin$

この場合,%03dだと,000〜999までがdecimal(整数)で発番される.変換されたファイルを確認する.

       MBA13:fami ujpadmin$ ls RESIZE300*
       RESIZE300_000.jpg	RESIZE300_021.jpg	RESIZE300_042.jpg	RESIZE300_063.jpg
       RESIZE300_001.jpg	RESIZE300_022.jpg	RESIZE300_043.jpg	RESIZE300_064.jpg
       RESIZE300_002.jpg	RESIZE300_023.jpg	RESIZE300_044.jpg	RESIZE300_065.jpg
       RESIZE300_003.jpg	RESIZE300_024.jpg	RESIZE300_045.jpg	RESIZE300_066.jpg
       RESIZE300_004.jpg	RESIZE300_025.jpg	RESIZE300_046.jpg	RESIZE300_067.jpg
       RESIZE300_005.jpg	RESIZE300_026.jpg	RESIZE300_047.jpg	RESIZE300_068.jpg
       RESIZE300_006.jpg	RESIZE300_027.jpg	RESIZE300_048.jpg	RESIZE300_069.jpg
       RESIZE300_007.jpg	RESIZE300_028.jpg	RESIZE300_049.jpg	RESIZE300_070.jpg
       RESIZE300_008.jpg	RESIZE300_029.jpg	RESIZE300_050.jpg	RESIZE300_071.jpg
       RESIZE300_009.jpg	RESIZE300_030.jpg	RESIZE300_051.jpg	RESIZE300_072.jpg
       RESIZE300_010.jpg	RESIZE300_031.jpg	RESIZE300_052.jpg	RESIZE300_073.jpg
       RESIZE300_011.jpg	RESIZE300_032.jpg	RESIZE300_053.jpg	RESIZE300_074.jpg
       RESIZE300_012.jpg	RESIZE300_033.jpg	RESIZE300_054.jpg	RESIZE300_075.jpg
       RESIZE300_013.jpg	RESIZE300_034.jpg	RESIZE300_055.jpg	RESIZE300_076.jpg
       RESIZE300_014.jpg	RESIZE300_035.jpg	RESIZE300_056.jpg	RESIZE300_077.jpg
       RESIZE300_015.jpg	RESIZE300_036.jpg	RESIZE300_057.jpg	RESIZE300_078.jpg
       RESIZE300_016.jpg	RESIZE300_037.jpg	RESIZE300_058.jpg	RESIZE300_079.jpg
       RESIZE300_017.jpg	RESIZE300_038.jpg	RESIZE300_059.jpg	RESIZE300_080.jpg
       RESIZE300_018.jpg	RESIZE300_039.jpg	RESIZE300_060.jpg	RESIZE300_081.jpg
       RESIZE300_019.jpg	RESIZE300_040.jpg	RESIZE300_061.jpg	RESIZE300_082.jpg
       RESIZE300_020.jpg	RESIZE300_041.jpg	RESIZE300_062.jpg
       MBA13:fami ujpadmin$

あとは開いてみれば良い.

GIFアニメを作成する

  • たくさんの画像ファイルを使って、GIFアニメを作成する.
       MBA13:fami ujpadmin$ convert -delay 100 -loop 0 RESIZE300_*.jpg fami.gif
       MBA13:fami ujpadmin$
  • この場合,100msなので1秒間隔で再生され,ループ回数は0なので無限大.元画像はRESIZE300_*が使われ,fami.gifが作成される.
  • 作成されたファイルのサイズはこんな感じ.
       MBA13:fami ujpadmin$ ls -lah fami.gif
       -rw-r--r--@ 1 ujpadmin  staff   7.7M  6 23 22:22 fami.gif
       MBA13:fami ujpadmin$
  • 最終的なサイズだけ見ても仕方ないか.

広告スペース
Google