made wxImage::Scale() const to not confuse people any more and added
a Rescale() which changes the image size "in place". Documented both changes too. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2955 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -433,15 +433,50 @@ mimetype to the named file}
|
|||||||
\end{twocollist}}
|
\end{twocollist}}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
\membersection{wxImage::Rescale}\label{wximagerescale}
|
||||||
|
|
||||||
|
\func{wxImage}{Rescale}{\param{int}{ width}, \param{int}{ height}}
|
||||||
|
|
||||||
|
Changes the size of the image in-place: after a call to this function, thei
|
||||||
|
mage will have the given width and height.
|
||||||
|
|
||||||
|
\wxheading{See also}
|
||||||
|
|
||||||
|
\helpref{Scale}{wximagescale}
|
||||||
|
|
||||||
\membersection{wxImage::Scale}\label{wximagescale}
|
\membersection{wxImage::Scale}\label{wximagescale}
|
||||||
|
|
||||||
\func{wxImage}{Scale}{\param{int}{ width}, \param{int}{ height}}
|
\constfunc{wxImage}{Scale}{\param{int}{ width}, \param{int}{ height}}
|
||||||
|
|
||||||
Returns a scaled version of the image. This is also useful for
|
Returns a scaled version of the image. This is also useful for
|
||||||
scaling bitmaps in general as the only other way to scale bitmaps
|
scaling bitmaps in general as the only other way to scale bitmaps
|
||||||
is to blit a wxMemoryDC into another wxMemoryDC. Windows can do such
|
is to blit a wxMemoryDC into another wxMemoryDC.
|
||||||
scaling itself but in the GTK port, scaling bitmaps is done using
|
|
||||||
this routine internally.
|
NB: although Windows can do such scaling itself but in the GTK port, scaling
|
||||||
|
bitmaps is done using this routine internally.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
\begin{verbatim}
|
||||||
|
// get the bitmap from somewhere
|
||||||
|
wxBitmap bmp = ...;
|
||||||
|
|
||||||
|
// rescale it to have size of 32*32
|
||||||
|
if ( bmp.GetWidth() != 32 || bmp.GetHeight() != 32 )
|
||||||
|
{
|
||||||
|
wxImage image(bmp);
|
||||||
|
bmp = image.Scale(32, 32).ConvertToBitmap();
|
||||||
|
|
||||||
|
// another possibility:
|
||||||
|
image.Rescale(32, 32);
|
||||||
|
bmp = image;
|
||||||
|
}
|
||||||
|
|
||||||
|
\end{verbatim}
|
||||||
|
|
||||||
|
\wxheading{See also}
|
||||||
|
|
||||||
|
\helpref{Rescale}{wximagerescale}
|
||||||
|
|
||||||
\membersection{wxImage::SetData}\label{wximagesetdata}
|
\membersection{wxImage::SetData}\label{wximagesetdata}
|
||||||
|
|
||||||
|
@@ -195,13 +195,18 @@ public:
|
|||||||
|
|
||||||
// these functions get implemented in /src/(platform)/bitmap.cpp
|
// these functions get implemented in /src/(platform)/bitmap.cpp
|
||||||
wxImage( const wxBitmap &bitmap );
|
wxImage( const wxBitmap &bitmap );
|
||||||
|
operator wxBitmap() const { return ConvertToBitmap(); }
|
||||||
wxBitmap ConvertToBitmap() const;
|
wxBitmap ConvertToBitmap() const;
|
||||||
|
|
||||||
void Create( int width, int height );
|
void Create( int width, int height );
|
||||||
void Destroy();
|
void Destroy();
|
||||||
|
|
||||||
wxImage Scale( int width, int height );
|
// return the new image with size width*height
|
||||||
|
wxImage Scale( int width, int height ) const;
|
||||||
|
|
||||||
|
// rescales the image in place
|
||||||
|
wxImage Rescale( int width, int height ) { *this = Scale(width, height); }
|
||||||
|
|
||||||
// these routines are slow but safe
|
// these routines are slow but safe
|
||||||
void SetRGB( int x, int y, unsigned char r, unsigned char g, unsigned char b );
|
void SetRGB( int x, int y, unsigned char r, unsigned char g, unsigned char b );
|
||||||
unsigned char GetRed( int x, int y );
|
unsigned char GetRed( int x, int y );
|
||||||
@@ -238,18 +243,19 @@ public:
|
|||||||
void SetMask( bool mask = TRUE );
|
void SetMask( bool mask = TRUE );
|
||||||
bool HasMask() const;
|
bool HasMask() const;
|
||||||
|
|
||||||
inline wxImage& operator = (const wxImage& image)
|
wxImage& operator = (const wxImage& image)
|
||||||
{ if ((*this) == image)
|
{
|
||||||
return (*this);
|
if ( (*this) != image )
|
||||||
Ref(image);
|
Ref(image);
|
||||||
return *this; }
|
return *this;
|
||||||
|
}
|
||||||
|
|
||||||
inline bool operator == (const wxImage& image)
|
bool operator == (const wxImage& image)
|
||||||
{ return m_refData == image.m_refData; }
|
{ return m_refData == image.m_refData; }
|
||||||
inline bool operator != (const wxImage& image)
|
bool operator != (const wxImage& image)
|
||||||
{ return m_refData != image.m_refData; }
|
{ return m_refData != image.m_refData; }
|
||||||
|
|
||||||
static inline wxList& GetHandlers() { return sm_handlers; }
|
static wxList& GetHandlers() { return sm_handlers; }
|
||||||
static void AddHandler( wxImageHandler *handler );
|
static void AddHandler( wxImageHandler *handler );
|
||||||
static void InsertHandler( wxImageHandler *handler );
|
static void InsertHandler( wxImageHandler *handler );
|
||||||
static bool RemoveHandler( const wxString& name );
|
static bool RemoveHandler( const wxString& name );
|
||||||
|
@@ -150,7 +150,7 @@ void wxImage::Destroy()
|
|||||||
UnRef();
|
UnRef();
|
||||||
}
|
}
|
||||||
|
|
||||||
wxImage wxImage::Scale( int width, int height )
|
wxImage wxImage::Scale( int width, int height ) const
|
||||||
{
|
{
|
||||||
wxImage image;
|
wxImage image;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user