Skip to content

Latest commit

 

History

History
41 lines (35 loc) · 1.58 KB

README.md

File metadata and controls

41 lines (35 loc) · 1.58 KB

課題1

【TRY】画像変換コマンドを作ろう

次の仕様を満たすコマンドを作って下さい

  • ディレクトリを指定する
  • 指定したディレクトリ以下のJPGファイルをPNGに変換(デフォルト)
  • ディレクトリ以下は再帰的に処理する
  • 変換前と変換後の画像形式を指定できる(オプション)

以下を満たすように開発してください

  • mainパッケージと分離する
  • 自作パッケージと標準パッケージと準標準パッケージのみ使う
    • 準標準パッケージ:golang.org/x以下のパッケージ
  • ユーザ定義型を作ってみる
  • GoDocを生成してみる
  • Go Modulesを使ってみる

使用方法

  • jpg, png, tiff, bmp, gif に対応しています
$ ./imgcnv -h
Usage of ./imgcnv:
  -d string
        変換の対象となる画像が格納されたディレクトリパス (default "./")
  -i string
        変換の対象となる画像種別 (default "jpg")
  -o string
        変換後の画像種別 (default "png")

実行例

  • 以下は testdata ディレクトリ内の tiff 画像を bmp 画像に変換して出力します
$ ./imgcnv -d testdata -i tiff -o bmp

感想

  • 画像変換は C++ と Windows Imaging Component の組み合わせで実装したことがありました。
  • この時は低レイヤーな関数を扱わなくてはいけなくて、苦労しました。
  • Go では抽象化された関数などが用意されていて、簡単に画像変換できました。