2011-11-07 17 views
4

私はファイルを保存するときにすべてのサンプルを参照してください。しかし、ファイルの代わりにchar *やstringに保存することが可能かどうかは疑問です。Boost :: GIL画像をJPEGまたはPNG形式でchar *に保存するには?

+1

つまり、JPEGまたはPNGでエンコードされたイメージを表すローのメモリバッファを意味しますか? –

+0

@Christian Rau:JPEGまたはPNGでエンコードされた画像を持つ未処理のメモリバッファ – Rella

+0

GILにはすでにメモリ内にある画像のコピーを作成する方法があります(http://www.boost.org/doc/libs/1_47_0/libs/ gil/doc/html/giltutorial.html#InterfaceSec、画像と画像のビューの違い)。メモリ内のさまざまなコピーを、メモリ内にあるバイトのバッグにすることで、何を得ることができますか? –

答えて

7

ブースト自体でこれを容易にするものはないようです。すべてのI/Oは、ファイル名の提供に基づいているようです。

ただし、ストリームベースのI/Oを持つio_newと呼ばれる拡張子hereがあるようです。

例については、here(「メモリバッファの読み書き」を検索してください)を参照してください。

+0

これはboost mainlineリリースでは不可能であることを確認できます。私はImageMagickを引っ張ってしまったが、それは私が予想していたよりも重かった。 'io_new'またはまっすぐな' libpng'はより洗練された解決策です。 – totowtwo

+1

'io_new'の著者は実際にはBoost.GILのメンテナーですので、コードの品質は高くなるMLは先月、 'io_new'をメインラインのBoostにマージすることを要求していましたが、どうなっているのか分かりません)。 – ildjarn

関連する問題