Added version of Quantize that manages the palette itself

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@7894 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Julian Smart
2000-07-29 13:41:56 +00:00
parent 5e5437e00b
commit 2f382cc6be
2 changed files with 26 additions and 0 deletions

View File

@@ -55,6 +55,12 @@ DECLARE_DYNAMIC_CLASS(wxQuantize)
static bool Quantize(const wxImage& src, wxImage& dest, wxPalette** pPalette = NULL, int desiredNoColours = 236, static bool Quantize(const wxImage& src, wxImage& dest, wxPalette** pPalette = NULL, int desiredNoColours = 236,
unsigned char** eightBitData = 0, int flags = wxQUANTIZE_INCLUDE_WINDOWS_COLOURS|wxQUANTIZE_FILL_DESTINATION_IMAGE|wxQUANTIZE_RETURN_8BIT_DATA); unsigned char** eightBitData = 0, int flags = wxQUANTIZE_INCLUDE_WINDOWS_COLOURS|wxQUANTIZE_FILL_DESTINATION_IMAGE|wxQUANTIZE_RETURN_8BIT_DATA);
// This version sets a palette in the destination image so you don't
// have to manage it yourself.
static bool Quantize(const wxImage& src, wxImage& dest, int desiredNoColours = 236,
unsigned char** eightBitData = 0, int flags = wxQUANTIZE_INCLUDE_WINDOWS_COLOURS|wxQUANTIZE_FILL_DESTINATION_IMAGE|wxQUANTIZE_RETURN_8BIT_DATA);
//// Helpers //// Helpers
// Converts input bitmap(s) into 8bit representation with custom palette // Converts input bitmap(s) into 8bit representation with custom palette

View File

@@ -1562,3 +1562,23 @@ bool wxQuantize::Quantize(const wxImage& src, wxImage& dest, wxPalette** pPalett
return TRUE; return TRUE;
} }
// This version sets a palette in the destination image so you don't
// have to manage it yourself.
bool wxQuantize::Quantize(const wxImage& src, wxImage& dest, int desiredNoColours,
unsigned char** eightBitData, int flags)
{
wxPalette* palette = NULL;
if (Quantize(src, dest, & palette, desiredNoColours, eightBitData, flags))
{
if (palette)
{
dest.SetPalette(* palette);
delete palette;
}
return TRUE;
}
else
return FALSE;
}