Question

Is it possible with boost::gil to read the RGB image information so that I can read the file into the correct rgbx_image_t?

With the following I have to know the type beforehand and that is not so neat.

boost::gil::rgb8_image_t im;
gil::png_read_image(m_filename, im);
Was it helpful?

Solution

You can make a list of types you want to try and use an any_image to hold a type-erased result:

typedef mpl::vector<rgb8_image_t, rgb16_image_t> my_img_types;
any_image<my_img_types> runtime_image;
png_read_image("input.png", runtime_image);

Source

OTHER TIPS

Alternative to the introducing any_image runtime stuff is using *_read_and_convert_image functions family (png_read_and_convert_image for your case)

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top