ピックアップ
画像を特定拡張子のに変換するコマンドを試した件
画像ファイルに関して、
処理の中で、
特定の画像に変換したいなとなって、
その変換処理を作ろうとして、
コマンドを調べて、
実際に変換処理を試してみようと思いました。
あくまで、
個人的な備忘録なので、
ChatGPT等に聞きながら、
自分なりに見返したいところだけ、
この記事にメモしてる。
使うコマンド
実際に変換するコマンドは、
convertというコマンドを使う。
これ、
ImageMagickというOSS画像処理ツール群。
- 概要:
ImageMagickは1987年にJohn Cristy氏によって開発された、画像の読み込み・変換・編集ができるOSSの画像処理ツール群。 - 目的:
GUIなしで画像を扱いたいニーズ(Webサーバーでの動的画像生成など)に応えるために設計。
コマンドラインやスクリプトでの画像変換・リサイズ・圧縮・合成などが得意。 - 主な機能:
- 画像形式の変換(例: JPEG → PNG / WebPなど)
- サムネイル生成
- テキストの描画
- トリミング、リサイズ
- アニメーションGIFの作成
- 対応形式:
JPEG, PNG, GIF, TIFF, PDF, WebP, SVGなど200以上。
これ、
最近は、
convert の代わりに magick を使うスタイルが推奨されつつあるので、
必要に応じて、
最新情報を収集してほしい。
準備
自分の環境は、
Ubuntu
でやっているので、
以下のコマンドで導入。
sudo apt updatesudo apt install imagemagick導入できたら、
convertのコマンドで、
パラメータ表示されるので、
そこまでできたら準備完了。
試す
実際に自分の環境で試した。
コマンドは、
convert old_file new_file.pngのような感じ。
これで問題なければ、
エラーなく何も表示されずに完了。
参考
実際に、
特定ファイル名を含むファイルを、
変換する処理コードは、
こんな感じでシェル組んだ。
#!/bin/bash
PATTERN="*sample*"
find ./ -name "$PATTERN" | while read filepath; do
dir=$(dirname "$filepath")
filename=$(basename "$filepath")
filename_noext="${filename%.*}"
convert "$filepath" "$dir/${filename_noext}.extension_name"
done参考まで。
おすすめ書籍
コメント一覧
コメントはまだありません。




コメントを残す