GNU/Linux >> Linux の 問題 >  >> Linux

Linuxで画像をASCII形式に変換する方法

このガイドでは、Linuxで画像をASCII形式に変換する方法について説明します。このタスクでは、 Jp2aを使用します 。 Jp2aは、指定された画像をASCII文字形式に変換するのに役立つコマンドラインツールです。画像ファイルとURLの組み合わせを指定でき、Jp2aツールはそれらすべてを即座にASCII文字に変換します。 Jp2aには、画像を操作するための多くの便利なオプションがあります。 Jp2aでできることがいくつかあります!

  • 標準入力から画像を読み取る
  • 背景モードを明るいまたは暗いに設定します
  • 境界線を設定
  • 出力の高さと幅を設定します
  • 出力画像のカスタムサイズを設定します
  • 出力画像を垂直または水平に反転します
  • 出力ASCII画像を生成するときに特定の文字を使用します
  • 画像を反転
  • ウェブから画像をダウンロードして変換します
  • そしてたくさん。

LinuxにJp2aをインストールする

Jp2aは多くのLinuxディストリビューション用にパッケージ化されており、デフォルトのリポジトリで利用できます。

ArchLinuxおよびManjaroLinuxなどのバリアントにJp2aをインストールするには、次のコマンドを実行します。

 $ sudo pacman -S jp2a 

Debian、Ubuntu、Linux mintの場合:

 $ sudo apt install jp2a 

Fedoraの場合:

 $ sudo dnf install jp2a 

CentOS / RHELの場合:

 $ sudo yum install epel-release 
 $ sudo yum install jp2a 

openSUSEの場合:

 $ sudo zypper install jp2a 

Linuxで画像をASCII形式に変換

特定のJPG/JPEG画像をASCII文字形式に変換するには、次のコマンドを実行します。

 jp2a  

例:

 $ jp2a arch.jpg 

出力例:

<前> MWXMWXWWXWWXWWXWWXWMXWMXNMNNMNNMNNMNNMNXWNXMWXWWXWWXWWXWMXWMXNMXNMNNMNNMNNMNXMNXMWNWWNNWNNWNNWNNWNNWWNWWNWWNWWNWWNWWNWWNWWdxWNNWNNWNNWNNWNNWWNWWNWWNWWNWWNWWNWWNWWNNWWNWWNWWNWWNWWNWWNWWNWWNNWNNWNNWNNWNNWNkccxWWNWWNWWNWWNWWNWWNNWNNWNNWNNWNNWNNWNNWWWWNWWNWWNWWNWWNWWNWWNWWNWWNWWNNWNNWNNW0ccccOWNWWNWWNWWNWWNWWNWWNWWNNWNNWNNWNNWWNWWNWWNNWNNWNNWNNWNNWWNWWNWWNWWNWWNWWNWWKlccccc0WNNWNNWNNWNNWWNWWNWWNWWNWWNWWNWWNWWNNWWNWWNWWNWWNWWNWWNWWNWWNNWNNWNNWNNWNXlccccccl0WWNWWNWWNWWNWWNNWNNWNNWNNWNNWNNWNNWWWWNWWNWWNWWNWWNWWNWWNWWNWWNNWNNWNNWNocccccccclXWNWWNWWNWWNWWNWWNNWNNWNNWNNWNNWWNWWNWWNNWNNWNNWNNWNNWWNWWNWWNWWNWWNWWNdccccccccccoXWNNWNNWNNWWNWWNWWNWWNWWNWWNWWNWWNNWWNWWNWWNWWNWWNWWNWWNWWNNWNNWNNWNNkccccccccccccoXWWNWWNWWNWWNNWNNWNNWNNWNNWNNWNNWWWWNWWNWWNWWNWWNWWNWWNWWNWWNWWNNWNkccccccccccccccdNWNWWNWWNWWNWWNWWNNWNNWNNWNNWWNWWNWWNNWNNWNNWNNWNNWWNWWNWWNWWNWWNkccccccccccccccccdNWNNWNNWWNWWNWWNWWNWWNWWNWWNWWNNWWNWWNWWNWWNWWNWWNWWNWWNNWNNWNNWXxccccccccccccccccdXWWNWWNWWNNWNNWNNWNNWNNWNNWNNWWWWNWWNWWNWW NWWNWWNWWNWWNWWNNWNOoOXNklccccccccccccccdNWNWWNWWNWWNNWNNWNNWNNWNNWWNWWNWWNNWNNWNNWNNWNNWWNWWNWWNWWNOccccok0kdcccccccccccccoXWNNWWNWWNWWNWWNWWNWWNWWNWWNNWWNWWNWWNWWNWWNWWNWWNWWNWWNNOcccccccccodoccccccccccccoXWWNWWNWWNNWNNWNNWNNWNNWNNWWWWNWWNWWNWWNWWNWWNWWNWWNWWNkccccccccccccccccccccccccccoNWNWWNWWNWWNNWNNWNNWNNWWNWWNWWNWWNNWNNWNNWNNWWNWWNWWNkccccccccccccccccccccccccccccoXWWNWWNWWNWWNWWNWWNWWNWWNNWWNWWNWWNWWNWWNWWNWWNWWNNkccccccccccccccccccccccccccccccoKWWNWWNNWNNWNNWNNWNNWWNWWWWNWWNWWNWWNWWNWWNWWNWWNxcccccccccccccccccccccccccccccccclXWNNWNNWNNWNNWNNWNNWNNWWNWWNNWNNWNNWNNWNNWWNWWXdcccccccccccccccccccccccccccccccccclKWWNWWNWWNWWNWWNWWNWWNNWWNWWNWWNWWNWWNWWNWWNNdccccccccccccccccccccccccccccccccccccl0NWNNWNNWNNWNNWNNWNNWWWWNWWNWWNWWNWWNWWNWWXoccccccccccccccccdx0Oxdlcccccccccccccccl0WNWWNNWNNWNNWNNWWNWWNWWNWWNNWNNWNNWNNWWKlcccccccccccccclkXWWNWWNNOlcccccccccccccccOWWNWWNWWNWWNWWNWWNNWWNWWNWWNWWNWWNWWNKlcccccccccccccclKNWWNWWNWWNXocccccccccccccccONWNNWNNWNNWNNWWNWWWWNWWNWWNWWNWWNWW0lcccccccc cccccclXNNWNNWWNWWNWNoccccccccccccccckWNNWNNWNNWNNWNNWWNWWNNWNNWNNWNNWNkccccccccccccccccONWWNWWNWWNNWNNXccccccccccccccccdNWNWWNWWNWWNWWNNWWNWWNWWNWWNWWNkcccccccccccccccclNWNNWWNWWNWWNWWNdcccccccccloolcccdNWNNWNNWNNWWNWWWWNWWNWWNWWNWWxcccccccccccccccccoNWNNWWNWWNWWNWWNkcccccccccccoxO0OddNNNWNNWNNWNNWWNWWNNWNNWNNWXdccccccccccccccccccoWNWWNWWNWWNNWNNWkcccccccccccccclxKNXWWNWWNWWNWWNNWWNWWNWWNWWXoccccccccccccccccccccXWNNWWNWWNWWNWWNdcccccccccccccccccoOXNWNNWNNWWNWWWWNWWNWWNWXocccccccccccccccldxk00XWNNWNNWWNWWNWWNK0kxdlcccccccccccccccxKNNWNNWNNWWNWWNNWNNWKlccccccccccldxO0NWNWWNWWNWWNWWNWWNNWNNWNNWNNWXK0xdlccccccccccl0WNWWMMMMMWWNWWNWWOccccccccoxOXNWNWWNWWNNWNNWNNWWNWWNWWNWWNWWNWWNWWNWWNKOxoccccccccOWNWMMMMMWWNWWNWOcccccox0NNWWNWWNNWNNWNNWNNWNNWWNWWNWWNWWNWWNWWNWWNWWNNWNNN0xoccccckNNMMMMMNWWNNWkccok0XNWNNWWNWWNWWNWWNWWNWWNWWNWWNWWNNWNNWNNWNNWNNWWNWWNWWNWWNN0xocckWNWWNWWWNWNxdOXWWNWWNWWNWWNWWNWWNNWNNWNNWNNWWNWWNWWNWWNWWNWWNWWNWWNWWNWWNNWNNWNXOxxNNNWWNWWNXNNNWNNWNNWNNWNNWWNWWNWWNWWNWWNWWNWWNWW NNWNNWNNWNNWNNWNNWWNWWNWWNWWNWWNWNXWWNN

簡単ですね。

複数の画像を指定して、一度にすべてを変換できます。

 $ jp2a img1.jpg img2.jpg 

このコマンドは、指定された画像をASCIIに変換し、それらを次々に表示します。

すでに述べたように、Jp2aには入力画像を操作するための多くのオプションとフラグがあります。いくつかのオプションの使用法を例とともに見てみましょう。

標準入力から画像を読み取る

標準入力から画像を読み取り、標準出力でASCII文字を印刷するには、パイプを使用します。 以下のようなコマンド。

 $ cat arch.jpg | jp2a-

最後のハイフン記号(-)に注意してください。

出力をファイルに書き込む

標準出力にASCII画像を表示する代わりに、以下に示すようにファイルに書き込むことができます。

 $ jp2a arch.jpg --output =arch_ascii 

このコマンドは、ASCII出力を arch_asciiというテキストファイルに追加します。 。 「cat」コマンドを使用してファイルの内容を表示できます:

 $ cat arch_ascii 

特定の高さ/幅で画像を印刷する

画像をASCII形式に変換し、選択した特定の高さまたは幅で印刷できます。

特定の高さ(たとえば30行)を使用して印刷するには、次のようにします。

 $ jp2a --height =30 arch.jpg 

幅は画像のアスペクト比から自動的に計算されます。

同様に、幅を指定するには、次のコマンドを実行します。

 $ jp2a --weight =30 arch.jpg 

両方のオプションを組み合わせて画像を印刷することもできます。

 $ jp2a --height =20 --width =40 arch.jpg 

画像をASCII形式でX列とY行に印刷する

次のコマンドは、指定された画像ファイルをASCIIに変換し、出力を50列30行で出力します。

 $ jp2a --size =50x30 arch.jpg 

出力例:

境界線をASCII文字に設定

ASCII出力の周囲に境界線を設定する場合は、境界線を使用します 以下のようなオプション:

 $ jp2a -border  --size =50x30 arch.jpg 

出力例:

明るい/暗い背景で画像を印刷する

Jp2aには、明るい背景と暗い背景でASCII文字を印刷するオプションがあります。

 $ jp2a --background =light arch.jpg 
 $ jp2a --background =dark arch.jpg 

暗い背景でASCII形式に画像を印刷する

背景が白い画像を表示しているが、暗い背景に明るい文字が表示されているディスプレイを使用している場合は、反転を使用して画像を反転する必要があります。 フラグ。

 $ jp2a arch.jpg --invert 

出力例:

。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 :; 、oo; .oooo'.looooo。 .looooool。 cooooooool。 :ooooooooooc。 、ooooooooooooc。 、oooooooooooooo:、oooooooooooooooo:。;oooooooooooooooo:。 'c'。 、loooooooooooooo:'ooooc、。、:oooooooooooooc。 'oooooooooc:cooooooooooooc。 、ooooooooooooooooooooooooooc、ooooooooooooooooooooooooooooc。 、ooooooooooooooooooooooooooooooc。;ooooooooooooooooooooooooooooooool。 。:ooooooooooooooooooooooooooooooooool。 :ooooooooooooooooooooooooooooooooooool。 .coooooooooooooooo:;。';:loooooooooooooool。 .looooooooooooool 、. 'looooooooooooooo'.looooooooooooool。 .cooooooooooooooo'.looooooooooooool。 cooooooooooooooo、、oooooooooooooooo'.oooooooooooooooo:、ooooooooooooooool:ooooooooolcclooo:; oooooooooooooooooc、oooooooooooc;'。'::。:ooooooooooooooooooc、oooooooooo 。 .coooooooooooooooooooo。 :oooooooooooooooooc'。 .coooooooooooooool:;、... ..、;:looooooooooooooo;。 .looooooooool:;'。 ...;:looooooooool。 'ooooooooc;'。 。';coooooooo''oooooc;。 。;cooooo、、ooc、..。; coo、;:'。 。';; 。 。

特定の文字のみで画像を印刷する

デフォルトの文字で画像を印刷する代わりに、選択したカスタム文字を使用できます。

 $ jp2a --size =50x30 --chars ="[email protected] @" arch.jpg 

インターネットから直接画像をダウンロード

ローカル画像だけでなく、インターネットから画像を直接ダウンロードしてASCIIに変換することもできます。

インターネットから直接画像をダウンロードしてASCII形式で印刷するには、次のコマンドを実行します。

 $ jp2a --size =50x30 https://upload.wikimedia.org/wikipedia/commons/d/dd/Linux_logo.jpg 

または、カールを使用します またはwget 画像をダウンロードするプログラムとjp2aは、以下のような標準入力から画像を読み取ります。

 $ curl -s https://upload.wikimedia.org/wikipedia/commons/d/dd/Linux_logo.jpg | jp2a-

JPG/JPEG以外の画像を変換する

JPG / JPEG以外の画像タイプがある場合はどうなりますか?その場合は、ImageMagickの変換を使用できます 以下のようなツール。 ImageMagickは、多くのLinuxディストリビューションのデフォルトのリポジトリで利用できます。

ArchLinuxとManjaroLinuxのようなその変種について:

 $ sudo pacman -S imagemagick 

Debian、Ubuntu、Linux Mintの場合:

 $ sudo apt install imagemagick 

ImageMagickをインストールした後、次のコマンドを実行して、指定されたPNG形式の画像をJpeg / Jpg形式に変換してから、ASCII形式に変換します。

 $ convert arch.png jpg:-| jp2a-

末尾のハイフン記号(-)に注意してください。

同様に、任意の画像形式をJPEG / JPGに変換してから、再度ASCII形式に変換するだけです。

厳密なHTML出力を生成する

Jp2aには、厳密なXHTML1.0出力を生成するオプションがあります。

 $ jp2a --size =50x30 -html  arch.jpg --output =arch.html 

出力例:

 <?xml version ='1.0' encoding ='ISO-8859-1'?> <!DOCTYPE html PUBLIC'-// W3C // DTD XHTML 1.0 Strict // EN'' http://www.w3 .org / TR / xhtml1 / DTD / xhtml1-strict.dtd'>  jp2a変換された画像 body {background-color:black;}。ascii {font-family:Courier;色:白; font-size:8pt;フォント重量:太字;}     
 MNWNWNWWNWNWNMXMNWNWNWWNNXWNWXMXWNWNWNNWNWNWXMXWNWNWNWNWWWWNWNWNWNWNWNWWWWkkNWNWNWNWNWWWWWWNWNWNWNWNNWNWNWWWWWWNWNWNWNWNWWWKccKWNWNWNWNWWWWWWNWNWNWNWNNWNWNWWWWWWNWNWNWNWNWWNoccoNNWNWNWNWWWWWWNWNWNWNWNWNWNWWWWWWNWNWNWNWNWWWOcccckWNWNWNWNWWWWNWNWNWNWNWWNWNWWWWNWNWNWNWNWNWWXlcccccKNWNWNWNWWWWNWNWNWNWNWWNWWWWWWWWNWNWNWNWWWNdcccccclNWNWNWWWWWWWWNWNWNWNWNWNWNWWWWNWNWNWNWNWNOccccccccxNWNWNWWWWWWNWNWNWNWNNWNWNWWWWWWNWNWNWNWXlccccccccc0WNWNWWWWWWNWNWNWNWNWWWWWWWWWWWWWWWWWWNNkccccccccclXWWWWWWWWWWWWWWWWWWWNWNWWWWNWNWNWNWNWxlkKdccccccccoNNWNWWWWNWNWNWNWNWWNWNWWWWWWNWNWNWNOccccddocccccccxNWNWWWWNWNWNWNWNWWWWWWWWWWWWWWWWWKccccccccccccccccOWWWWWWWWWWWWWWWWNWNWNWWWWNWNWNWXlcccccccccccccccccKWWWWWWNWNWNWNWNNWNWNWWWWNWNWNNdcccccccccccccccccclXNWWWWNWNWNWNWNWWWWWWWWWWWWWWxccccccccccccccccccccdNWWWWWWWWWWWWWWNWNWWWWWWNWNOccccccccccccccccccccccxNWWNWNWNWNWNWWNWNWWWWWWNWKccccccccclx0OklcccccccccOWWNWNWNWNWNWWWWWWWWWWWWXlccccccccoXWWWWXdccccccc cc0WWWWWWWWWWWNWNWNWWWWNNocccccccclNWWNWNWNocccccccclXWNWNWNWNWNNWNWNWWWWNdcccccccccOWWWNWNWNKcccccccccoNNWNWNWNWNWWWWWWWWNxccccccccccXWWWWWWWWNlcccccldlcoNWWWWWWWWWNWNWWWWOcccccccccccNWWWWNWNWNocccccccx0O0NWNWNWNWWNWNWWW0ccccccccccccXWWWWNWNWNlcccccccccdKNWNWNWNWNWNWNWKlcccccccccodkXWWWNWNWNNkdocccccccccdKWNWNWNNWNWNXlccccccdk0NNWNWWWWNWNWNWNWNN0kdcccccclXNWMMMNWNWNoccclx0NNWNWNWNWWWWNWNWNWNWNWNWWN0xlccclXWMMMWNWNdclkKNNWNWNWNWNWWWWWWNWNWNWNWNWWWWWWNKklcdNWMWWNWkxKNWWWNWNWNWNWNWWWWWWNWNWNWNWNWNWWWWNWNWKxkWNWNWXNNWWNWNWNWNWNWNWNWWNWNWNWNWNWNWNWNWWNWNWNWNNNWN 
この

これは、画像のASCII文字をWebブラウザで表示する場合に便利です。

画像をXおよびY方向に反転する、RGBをグレースケール変換の重みに設定する、出力にANSI色を使用する、端末の表示の高さ/幅を使用するなど、利用可能なオプションがさらにいくつかあります。それらを使用してください。

ヘルプが必要な場合は、次を実行してください:

 $ jp2a --help 
 $ man jp2a 

推奨される読み物:

  • Linuxで画像からモンタージュを作成する方法

Linux
  1. Linuxコンテナレジストリを管理する方法

  2. AmazonLinuxにImageMagickをインストールする方法

  3. Linuxでコマンドラインを使用してPDFをJPGに変換するには?

  1. DEBパッケージをArchLinuxパッケージに変換する方法

  2. UbuntuLinuxで複数の画像をPDFに変換する方法

  3. Linux シェルで 16 進数を ASCII 文字に変換する方法は?

  1. WindowsインストールをLinux上のVMに変換する

  2. Linuxでドライブをパーティション分割してフォーマットする方法

  3. Linux ディスク イメージをスパース ファイルに変換するにはどうすればよいですか?