Создание образа с Boost.GIL

Я пытаюсь прочитать документацию boost:: gil, но это где-то между отсутствующим и запутанным.

Повторяя, мне нужен пример того, как сделать следующее:

Создайте образ, скажем 512x512. Заполните его красными пикселями. Напишите в PNG.

Я ничего не могу найти о том, чтобы вообще что-то сделать в документации для gil. В частности, создание изображения или заполнение его частью пикселей.

Если кто-то может помочь, спасибо.

Ответы

Ответ 1

Я еще не использовал GIL, но я тоже хочу научиться этому. Взглянув на руководство по проектированию и погуглив ошибку, связанную с libpng, выглядело, как простейший пример:

#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));
}

работает для меня, с -lpng в командной строке, создавая этот образ

enter image description here