Creating image with Boost.GIL

隐身守侯 提交于 2019-11-27 06:40:10

问题


I've been trying to read the boost::gil documentation, but it's somewhere between lacking, and convoluted.

Ranting aside, I need an example on how to do the following:

Create an image of, say 512x512. Fill it with red pixels. Write to PNG.

I can't find anything about doing any of that, at all, in the documentation for gil. Particularly the creating an image or filling it with pixels part.

If anyone can help, thanks.


回答1:


I haven't used GIL yet, but I want to learn it as well. Having looked at the design guide and having googled up the error related to libpng, looks like the simplest example is

#define png_infopp_NULL (png_infopp)NULL
#define int_p_NULL (int*)NULL
#include <boost/gil/gil_all.hpp>
#include <boost/gil/extension/io/png_dynamic_io.hpp>
using namespace boost::gil;
int main()
{
    rgb8_image_t img(512, 512);
    rgb8_pixel_t red(255, 0, 0);
    fill_pixels(view(img), red);
    png_write_view("redsquare.png", const_view(img));
}

works for me, with -lpng on command line, producing this image



来源:https://stackoverflow.com/questions/5889235/creating-image-with-boost-gil

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!