イメージファイルをターミナル用の色付アスキーアートに変換するWebAPIを公開しました。
はじめに
ANSI エスケープシーケンス といって、Unix系のターミナル上に色付きの文字列を出力することができます。
例えば、 echo
コマンドでは出力したい文字列の前に \e[35m
(数値部分は任意。)といった制御文字を出力させることでターミナルに出力される文字列に色を付けることができます。
$ echo '\e[35mHello\e[0m! \e[31mWorld\e[0m!'
Hello! World!
イメージファイルを指定して、色付アスキーアート文字列を出力できたらと思いWebAPIを作成してみました。
img2txt
機能
イメージファイルのURLを指定すると、Unixターミナル用の色付アスキーアートを取得できます。
WebAPIのエンドポイントURL
https://img2txt.genzouw.com
使い方
基本
curl
コマンドを利用するのが簡単です。curl
コマンドでWebAPIを呼び出します。
- urlパラメータ : イメージファイルのURLを指定します。
# 右記のイメージファイルURLをWebAPIに渡します → https://www.google.com/images/branding/googlelogo/2x/googlelogo_color_272x92dp.png
$ curl -sS 'https://img2txt.genzouw.com?url=https://www.google.com/images/branding/googlelogo/2x/googlelogo_color_272x92dp.png'
ターミナルに以下のようなアスキーアートが表示されるはずです。
応用
出力内容をトリミングすることもできます。
- tlパラメータ : 数値を指定します。 左からN列を除去します。
- trパラメータ : 数値を指定します。 右からN列を除去します。
- ttパラメータ : 数値を指定します。 上からN行を除去します。
- tbパラメータ : 数値を指定します。 下からN行を除去します。
# 左から10列を削除
$ curl -sS 'https://img2txt.genzouw.com?url=https://www.google.com/images/branding/googlelogo/2x/googlelogo_color_272x92dp.png&tl=10'
# 上下左右10行、10列を削除
$ curl -sS 'https://img2txt.genzouw.com?url=https://www.google.com/images/branding/googlelogo/2x/googlelogo_color_272x92dp.png&tl=10&tr=10&tt=10&tb=10'
ひとこと
感想をお待ちしております。
2020-01-09 追記
ソースコードを Github で公開しました。
ディスカッション
コメント一覧
まだ、コメントがありません