0

フォーラムを検索したところ、Getting an array of bytes out of Windows::Storage::Streams::IBufferに遭遇しましたが、そこから何も取得できませんでした。私が理解するには少し複雑すぎるかもしれません。

私の問題の核心は、RenderTargetBitmap->GetPixelsAsync() を呼び出して IBuffer を取得していることです。ここで提供される関数を使用して、このデータから CanvasBitmap を作成する必要がありますhttp://microsoft.github.io/Win2D/html/M_Microsoft_Graphics_Canvas_CanvasBitmap_CreateFromBytes.htm

IBuffer から機能する配列にデータを取得する方法が見つかりませんでした。データをベクトルに取得する方法を見つけました

//convert IBuffer to byte array
auto reader = ::Windows::Storage::Streams::DataReader::FromBuffer(buf);

std::vector<unsigned char> data(reader->UnconsumedBufferLength);

if (!data.empty())
    reader->ReadBytes(
        ::Platform::ArrayReference<unsigned char>(
            &data[0], data.size()));

しかし、この時点から、これを配列に入れる方法が見つかりませんでした。C ++でベクトルを配列に変換する方法のすべてのアイデアを無駄に使用しようとしました。どんな助けでも大歓迎です

4

0 に答える 0