1 /////////////////////////////////////////////////////////////////////////////
3 // Purpose: wxImage PNG handler
4 // Author: Robert Roebling
6 // Copyright: (c) Robert Roebling
7 // Licence: wxWindows licence
8 /////////////////////////////////////////////////////////////////////////////
10 #ifndef _WX_IMAGPNG_H_
11 #define _WX_IMAGPNG_H_
15 //-----------------------------------------------------------------------------
17 //-----------------------------------------------------------------------------
22 #include "wx/versioninfo.h"
24 #define wxIMAGE_OPTION_PNG_FORMAT wxT("PngFormat")
25 #define wxIMAGE_OPTION_PNG_BITDEPTH wxT("PngBitDepth")
26 #define wxIMAGE_OPTION_PNG_FILTER wxT("PngF")
27 #define wxIMAGE_OPTION_PNG_COMPRESSION_LEVEL wxT("PngZL")
28 #define wxIMAGE_OPTION_PNG_COMPRESSION_MEM_LEVEL wxT("PngZM")
29 #define wxIMAGE_OPTION_PNG_COMPRESSION_STRATEGY wxT("PngZS")
30 #define wxIMAGE_OPTION_PNG_COMPRESSION_BUFFER_SIZE wxT("PngZB")
34 wxPNG_TYPE_COLOUR
= 0,
36 wxPNG_TYPE_GREY_RED
= 3
39 class WXDLLIMPEXP_CORE wxPNGHandler
: public wxImageHandler
44 m_name
= wxT("PNG file");
45 m_extension
= wxT("png");
46 m_type
= wxBITMAP_TYPE_PNG
;
47 m_mime
= wxT("image/png");
50 static wxVersionInfo
GetLibraryVersionInfo();
53 virtual bool LoadFile( wxImage
*image
, wxInputStream
& stream
, bool verbose
=true, int index
=-1 );
54 virtual bool SaveFile( wxImage
*image
, wxOutputStream
& stream
, bool verbose
=true );
56 virtual bool DoCanRead( wxInputStream
& stream
);
60 DECLARE_DYNAMIC_CLASS(wxPNGHandler
)