1

我现在正在学习如何在 boost 中使用通用图像库,下面的代码说明了如何将一些原始数据写入 jpeg 文件:

int main(void)
{
    unsigned char *src_pixels;
    int src_row_bytes = 200;
    src_pixels = new unsigned char [200*500];
    for(int i=0; i<500; i++)
    {
        for(int j=0; j<200; j++)
            src_pixels[i*200+j]= j;
    }
    char *dst_pixels;
    dst_pixels = new char [200*500];
    for(int i=0; i<500; i++)
    {
        for(int j=0; j<200; j++)
            dst_pixels[i*200+j]= j;
    }
    gray8c_view_t my_view = interleaved_view(200,500,(const gray8_pixel_t*)src_pixels,src_row_bytes);
    gray8s_view_t your_view = interleaved_view(200,500,( gray8s_pixel_t*)dst_pixels,src_row_bytes); 

    jpeg_write_view("C:/file_1_copy.jpg", my_view);
    jpeg_write_view("C:/file_2_copy.jpg", your_view);

     delete []src_pixels;
     delete []dst_pixels;

    return 0;
}

但是,似乎 jpeg_write_view("C:/file_2_copy.jpg", your_view);无法编译,并给出以下错误信息:

Error   2   error C2338: jpeg_write_support<View>::is_supported

我不知道如何让它编译。任何建议将不胜感激。

`

4

0 回答 0