dynamic_image.cpp 883 B

1234567891011121314151617181920212223
  1. //
  2. // Copyright 2005-2007 Adobe Systems Incorporated
  3. //
  4. // Distributed under the Boost Software License, Version 1.0
  5. // See accompanying file LICENSE_1_0.txt or copy at
  6. // http://www.boost.org/LICENSE_1_0.txt
  7. //
  8. #include <boost/gil.hpp>
  9. #include <boost/gil/extension/dynamic_image/any_image.hpp>
  10. #include <boost/gil/extension/io/jpeg.hpp>
  11. #include <boost/mp11.hpp>
  12. int main()
  13. {
  14. namespace gil = boost::gil;
  15. using my_images_t = boost::mp11::mp_list<gil::gray8_image_t, gil::rgb8_image_t, gil::gray16_image_t, gil::rgb16_image_t>;
  16. gil::any_image<my_images_t> dynamic_image;
  17. gil::read_image("test.jpg", dynamic_image, gil::jpeg_tag());
  18. // Save the image upside down, preserving its native color space and channel depth
  19. auto view = gil::flipped_up_down_view(gil::const_view(dynamic_image));
  20. gil::write_view("out-dynamic_image.jpg", view, gil::jpeg_tag());
  21. }