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,
37 wxPNG_TYPE_PALETTE
= 4
40 class WXDLLIMPEXP_CORE wxPNGHandler
: public wxImageHandler
45 m_name
= wxT("PNG file");
46 m_extension
= wxT("png");
47 m_type
= wxBITMAP_TYPE_PNG
;
48 m_mime
= wxT("image/png");
51 static wxVersionInfo
GetLibraryVersionInfo();
54 virtual bool LoadFile( wxImage
*image
, wxInputStream
& stream
, bool verbose
=true, int index
=-1 );
55 virtual bool SaveFile( wxImage
*image
, wxOutputStream
& stream
, bool verbose
=true );
57 virtual bool DoCanRead( wxInputStream
& stream
);
61 DECLARE_DYNAMIC_CLASS(wxPNGHandler
)