Zoya))) 557a1f3896 add project 6 years ago
..
example 557a1f3896 add project 6 years ago
test 557a1f3896 add project 6 years ago
AUTHORS 557a1f3896 add project 6 years ago
BUGS 557a1f3896 add project 6 years ago
COPYING 557a1f3896 add project 6 years ago
ChangeLog 557a1f3896 add project 6 years ago
Doxyfile 557a1f3896 add project 6 years ago
INSTALL 557a1f3896 add project 6 years ago
Makefile 557a1f3896 add project 6 years ago
NEWS 557a1f3896 add project 6 years ago
README 557a1f3896 add project 6 years ago
TODO 557a1f3896 add project 6 years ago
color.hpp 557a1f3896 add project 6 years ago
common.mk 557a1f3896 add project 6 years ago
config.hpp 557a1f3896 add project 6 years ago
consumer.hpp 557a1f3896 add project 6 years ago
convert_color_space.hpp 557a1f3896 add project 6 years ago
end_info.hpp 557a1f3896 add project 6 years ago
error.hpp 557a1f3896 add project 6 years ago
ga_pixel.hpp 557a1f3896 add project 6 years ago
generator.hpp 557a1f3896 add project 6 years ago
gray_pixel.hpp 557a1f3896 add project 6 years ago
image.hpp 557a1f3896 add project 6 years ago
image_info.hpp 557a1f3896 add project 6 years ago
index_pixel.hpp 557a1f3896 add project 6 years ago
info.hpp 557a1f3896 add project 6 years ago
info_base.hpp 557a1f3896 add project 6 years ago
io_base.hpp 557a1f3896 add project 6 years ago
packed_pixel.hpp 557a1f3896 add project 6 years ago
palette.hpp 557a1f3896 add project 6 years ago
pixel_buffer.hpp 557a1f3896 add project 6 years ago
pixel_traits.hpp 557a1f3896 add project 6 years ago
png.hpp 557a1f3896 add project 6 years ago
reader.hpp 557a1f3896 add project 6 years ago
require_color_space.hpp 557a1f3896 add project 6 years ago
rgb_pixel.hpp 557a1f3896 add project 6 years ago
rgba_pixel.hpp 557a1f3896 add project 6 years ago
solid_pixel_buffer.hpp 557a1f3896 add project 6 years ago
streaming_base.hpp 557a1f3896 add project 6 years ago
tRNS.hpp 557a1f3896 add project 6 years ago
types.hpp 557a1f3896 add project 6 years ago
writer.hpp 557a1f3896 add project 6 years ago

README

This is png++ the C++ wrapper for libpng. Version 0.2

General
=======

PNG++ aims to provide simple yet powerful C++ interface to libpng, the
PNG reference implementation library.

PNG++ is free software distributed under a modified variant of BSD
license. For more details please refer to file COPYING in this
directory.

Using raw libpng in C++ may impose serious challenge since lots of
precautions must be taken to handle initialization/deinitialization of
control structures as well as handling errors correctly. With png++
you can read or write PNG images just in a single line of C++ code:

png::image< png::rgb_pixel > image("input.png");
image.write("output.png");

The code reads an image from the file named "input.png", then writes
the image to a file named "output.png". In this example png++ does
all the transformations needed to create adequate in-memory RGB
representation of the image (well, in most cases it simply instructs
libpng to do so).

The image in "input.png" can be RGB image, or it might be grayscale or
even indexed image with a palette--png++ will just convert any input
to RGB format. However, for technical reasons such automatic
transformation is supported for RGB and Grayscale color types only.
Optionally there may be an alpha channel in the target color space
(RGBA and Gray+Alpha respectively).


Download
========

The project is hosted at Savannah:

http://savannah.nongnu.org/projects/pngpp/

Released source packages can be found here:

http://download.savannah.nongnu.org/releases/pngpp/

Also, you can check out sources directly from SVN repository:

svn://svn.sv.nongnu.org/pngpp/trunk/

or, for people w/o outgoing svn:

http://svn.sv.nongnu.org/pngpp/trunk/

Online documentation can be found here:

http://www.nongnu.org/pngpp/doc/html/index.html


Help
====

There is a mailing list for developers:

http://lists.nongnu.org/mailman/listinfo/pngpp-devel

You can also contact me by dropping a mail to .


Happy hacking!
--
Alex Shulgin