Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Netpbmとは? わかりやすく解説

Netpbm

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2025/02/21 08:45 UTC 版)

Netpbm
開発元 Bryan Henderson
最新版
11.02.12 / 2024年12月25日 (58日前) (2024-12-25)
リポジトリ
プログラミング
言語
C, Perl, Unix Shell
対応OS Cross-platform
ライセンス various, believed to be DFSG free
公式サイト netpbm.sourceforge.net
テンプレートを表示

Netpbm は画像を扱うプログラムライブラリの、オープンソースのパッケージであり、おもにUnixプラットフォームで多く用いられている。移植性の高いパッケージで、多くの種類のUNIXプラットフォーム、WindowsmacOSVMSAmiga OSや、Unix-likeなオープンソースなOSで動作するよう開発されている。

ファイル形式とプログラム

Netpbmでは、netpbm format と総称される画像ファイルフォーマット(形式)を定義している。

Netpbmパッケージには220以上のプログラムが含まれている。ほとんど全てについて、その名前には "pbm"、"pgm"、"ppm"、"pam"、"pnm" 等が少なくとも1つ必ず付いている。たとえば pamscaleは画像を10%縮小するプログラム、pamcompは画像を重ねて合成するプログラム、pbmtextは文字列を画像にするプログラム、pnmquantは画像中の色数を減らすプログラムである。

Netpbmパッケージでは、たとえばPBM形式を.bmpに変換するときになどに、変換プログラムを連続させて使うことができる。

pgmtoppm "#FFFFFF" somepic.pbm  > somepic.ppm
ppmtobmp somepic.ppm > somepic.bmp

この例は以下のようにすれば、 パイプを使えば、コマンド入力の回数を減らし、途中で作られているsomepic.ppmファイルを作らずに済ませることができる。

pgmtoppm "#FFFFFF" somepic.pbm | ppmtobmp > somepic.bmp

以上のようにNetpbmは、Unix系OSなどの(CUIシェルの)パイプラインをうまく活用する、いわゆるUNIX哲学などでも引用される(カーニハンとプラウガーの)Software Tools のアプローチで全体が設計(デザイン)されている。

さらに、画像フォーマットを変換するプログラムとしては、ABC という画像フォーマットがあったとすると、ABCtopnm というようなプログラムと、pnmtoABC というようなプログラムが提供されている(注: "pnm" の部分は "ppm" などのこともある)。これにより pnm を中間形式とすることで、たとえばX11のダンプ形式 (XWD) をMacintoshPICTに変換するには xwdtopnmppmtopict をパイプでつなげればよい (PNMを出力するプログラムはPBM、PGM、PPMのいずれかを出力する。またPNMを読み込むプログラムはそのどの形式も読み込める) 。具体的には次のようになる。

cat myscreenshot.xwd | xwdtopnm | ppmtopict > myscreenshot.pct

xwdコマンドの標準出力をそのままパイプへの入力とすれば、中間的なファイルを一切作らなくても済む。

xwd | xwdtopnm | ppmtopict > myscreenshot.pct

開発の経緯

白黒二値のビットマップ画像のデータ形式であるPBM形式は、プレーンテキストとして電子メールで受送信でき、ASCIIコードが廃れた後でも使える画像フォーマットを開発する目的で、1980年代Jef Poskanzerが考案した。

PBM形式の画像を扱うツールを開発するために、Pbmplusというライブラリが開発された。これはPBM提案者のJef Poskanzerによるもので、1988年にリリースされた。続いて彼はPGM形式およびPPM形式を提唱し、それを扱うために拡張したPbmplusをリリースした。Pbmplusは1991年12月10日までリリースが続いた。

1993年に、そのときにはすでに開発が止まっていたPbmplusの代替となるライブラリとしてNetpbmが開発された。これはPbmplusに世界各地から寄せられた修正案を適用し、まとめ直したものであった。その後1995年にまた開発が中断したが、1999年からは現在のメンテナBryan Hendersonが開発を引き継いでいる。

Netpbmという名前は、インターネットを通じて多くのプログラマたち共同作業を行っていたことからついたものである (NetBSDNethackも同様にしてついた名前である)。

関連項目

外部リンク





固有名詞の分類


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「Netpbm」の関連用語

Netpbmのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



Netpbmのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのNetpbm (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。

©2025 GRAS Group, Inc.RSS