*Portable Pixmap Format(PPM)
-(by [[ryna]], 2016.4.29)

**PPMの特徴
- シンプルな画像ファイルフォーマット
- バイナリ形式とテキスト形式を選べる
- 歴史がそこそこ長い(30年ほどはある)
- ヘッダが短い(重要)

**PPMを扱える代表的なソフトウェア
-GIMP
-LibreOffice
-MacのQuickLook(OS標準のプレビュー機能。ただしPreview.appでは表示不可能)

以上のソフトウェアは、すべてMac OS Xで確認しました。

**フォーマット
Wikipediaの記事や本家の仕様書を見ていただくのが手っ取り早いのですが、ここでは簡潔にまとめます。

PPM形式では、以下の要素が空白(スペース、タブ、CR、LFの繰り返し)区切りのテキストで並んでいます。

-P3 (マジックナンバー)
-10進数で横の長さ
-10進数で縦の長さ
-画素値の最大値 (255の決め打ちでOK)
-画像データの本体

画像データの本体は、RGBの値を空白区切りの10進数で順番に並べる。
並び順は、BMPなどと同じように、上の行から順番に、左から右。
並び順は、%%BMPなどと同じように%%、上の行から順番に、左から右。

(5月20日追記:BMPのフォーマットは下から上で、画素もBGRで並べてるようでしたので、BMPとは並べ方が違っていました)

バイナリ形式では、マジックナンバーをP6に書き換え、画像データの本体を直接バイナリデータとして記述する。
ただし、画像データ本体以外のメタデータについてはテキスト形式と同じように空白区切りの10進数で記述する。

例えば、256x256のテキスト形式での画像のヘッダは以下のようになります(末尾にスペースあり)。

 P3 256 256 255 

この文字列に続いて、画像データの本体をテキストで書き込めば完成です。

**ひとこと
[[Wikipediaに例:https://ja.wikipedia.org/wiki/PNM]]がありますが、この書き方のようにコメントや改行などは特に不要で、単純に空白区切でも大丈夫です。
(WikipediaのURLがうまく貼れない......)

**参考
-[[Wikipedia:https://ja.wikipedia.org/wiki/PNM]]
-[[PPM Format Specification:http://netpbm.sourceforge.net/doc/ppm.html]]
-[[碧色工房:http://www.mm2d.net/main/prog/c/image_io-01.html]]

※この記事を書いた人はWikiの編集に不慣れなので、不都合があった場合は編集や削除などをお願いします。

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS