Memo/Graphics

https://dexlab.net:443/pukiwiki/index.php?Memo/Graphics
 

Graphics


ImageMagick?

  • 6.5以上なら、「define jpeg:size=」を付ける。それ以下なら「-size」オプションを付ける
    convert -define jpeg:size=180x120 -resize 180x120 src.jpg dst.jpg

通常のgifとアニメーションgifを判別する

  • ImageMagick?を使用する場合
    • コマンドで画像ファイルの情報を調べるには
    • さらに詳細情報が知りたければ「-verbose」オプションをつける
    • アニメーションgifの場合、コマの数だけ出力される
      $ identify anim.gif 
      anim.gif[0] GIF 180x53+0+0 PseudoClass 256c 8-bit 101.3k 0.050u 0:01
      anim.gif[1] GIF 180x53+0+0 PseudoClass 256c 8-bit 101.3k 0.050u 0:01
      ...
    • 静止gifの場合
      $ identify noanim.gif
      noanim.gif GIF 180x53+0+0 PseudoClass 256c 8-bit 5.1k 0.010u 0:01 
  • PHPでexecを使いたくない/使えない場合は、
  • phpで判定。アニメgifの場合は、$outputに2行以上の出力があるので、count()等すればわかるはず。
    <?php
    // php -q this_script.php example.gif
    $filename = $argv[1];
    $output = array();
    $return_var = 0;
    $result = exec('/usr/bin/identify ' . $filename, $output, $return_var);
    printf("return_var : %s\n output : %s \n", $return_var, var_export($output, true));
    exit;

大きい画像を複数の小さい画像に分割する

  • pict_icon.gif を NN.gifに分割する。
    $ convert -crop 18x18 pict_icon.gif %03d.gif
  • 1枚だけ欲しい場合は、以下のようにX+Y(X+Yを省略するとアニメgif?になる)
    $ convert -crop 18x18+0+0 pict_icon.gif icon.gif

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2018-09-15 (土) 07:31:37 (63d)