]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/image.tex
fixed bug in mouse handling
[wxWidgets.git] / docs / latex / wx / image.tex
index b77ec8f799e0b30f194088a7b9e30584d8f8ca83..84f08f2df670dccbf21d206ad4b6c586d13b59fc 100644 (file)
@@ -18,7 +18,7 @@ creation of a \helpref{wxMask}{wxmask} object associated to the bitmap object.
 
 The following image handlers are available. {\bf wxBMPHandler} is always
 installed by default. To use other image formats, install the appropiate
 
 The following image handlers are available. {\bf wxBMPHandler} is always
 installed by default. To use other image formats, install the appropiate
-handler with \helpref{wxImage::AddHandler}{wximageaddhandler} or
+handler with \helpref{wxImage::AddHandler}{wximageaddhandler} or 
 \helpref{wxInitAllImageHandlers}{wxinitallimagehandlers}.
 
 \twocolwidtha{5cm}%
 \helpref{wxInitAllImageHandlers}{wxinitallimagehandlers}.
 
 \twocolwidtha{5cm}%
@@ -29,7 +29,7 @@ handler with \helpref{wxImage::AddHandler}{wximageaddhandler} or
 \twocolitem{{\bf \indexit{wxGIFHandler}}}{Only for loading, due to legal issues.}
 \twocolitem{{\bf \indexit{wxPCXHandler}}}{For loading and saving (see below).}
 \twocolitem{{\bf \indexit{wxPNMHandler}}}{For loading and saving (see below).}
 \twocolitem{{\bf \indexit{wxGIFHandler}}}{Only for loading, due to legal issues.}
 \twocolitem{{\bf \indexit{wxPCXHandler}}}{For loading and saving (see below).}
 \twocolitem{{\bf \indexit{wxPNMHandler}}}{For loading and saving (see below).}
-\twocolitem{{\bf \indexit{wxTIFFHandler}}}{For loading and saving.}
+\twocolitem{{\bf \indexit{wxTIFFHandler}}}{For loading.}
 \end{twocollist}
 
 When saving in PCX format, {\bf wxPCXHandler} will count the number of
 \end{twocollist}
 
 When saving in PCX format, {\bf wxPCXHandler} will count the number of
@@ -49,7 +49,7 @@ PNM format, {\bf wxPNMHandler} will always save as raw RGB.
 
 \wxheading{See also}
 
 
 \wxheading{See also}
 
-\helpref{wxBitmap}{wxbitmap}
+\helpref{wxBitmap}{wxbitmap}
 \helpref{wxInitAllImageHandlers}{wxinitallimagehandlers}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 \helpref{wxInitAllImageHandlers}{wxinitallimagehandlers}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -74,6 +74,13 @@ and forth without loss in that respect.
 
 Creates an image with the given width and height.
 
 
 Creates an image with the given width and height.
 
+\func{}{wxImage}{\param{int}{ width}, \param{int}{ height}, \param{unsigned char*}{ data}, \param{bool}{ static_data=FALSE}}
+
+Creates an image from given data with the given width and height. If 
+{\it static_data} is TRUE, then wxImage will not delete the actual
+image data in its destructor, otherwise it will free it by calling
+{\it free()}.
+
 \func{}{wxImage}{\param{const wxString\& }{name}, \param{long}{ type = wxBITMAP\_TYPE\_ANY}}
 
 \func{}{wxImage}{\param{const wxString\& }{name}, \param{const wxString\&}{ mimetype}}
 \func{}{wxImage}{\param{const wxString\& }{name}, \param{long}{ type = wxBITMAP\_TYPE\_ANY}}
 
 \func{}{wxImage}{\param{const wxString\& }{name}, \param{const wxString\&}{ mimetype}}
@@ -116,8 +123,8 @@ Loads an image from an input stream.
 
 Depending on how wxWindows has been configured, not all formats may be available.
 
 
 Depending on how wxWindows has been configured, not all formats may be available.
 
-Note : any handler other than BMP must be previously
-initialized with \helpref{wxImage::AddHandler}{wximageaddhandler} or
+Note: any handler other than BMP must be previously
+initialized with \helpref{wxImage::AddHandler}{wximageaddhandler} or 
 \helpref{wxInitAllImageHandlers}{wxinitallimagehandlers}.
 
 \wxheading{See also}
 \helpref{wxInitAllImageHandlers}{wxinitallimagehandlers}.
 
 \wxheading{See also}
@@ -180,6 +187,16 @@ on program start-up to look up colors. This ensures a very fast conversion, but
 the image quality won't be perfect (and could be better for photo images using more
 sophisticated dithering algorithms).
 
 the image quality won't be perfect (and could be better for photo images using more
 sophisticated dithering algorithms).
 
+On Windows, if there is a palette present (set with SetPalette), it will be used when
+creating the wxBitmap (most useful in 8-bit display mode). On other platforms,
+the palette is currently ignored.
+
+\membersection{wxImage::Copy}\label{wximagecopy}
+
+\constfunc{wxImage}{Copy}{\void}
+
+Returns an identical copy of the image.
+
 \membersection{wxImage::Create}\label{wximagecreate}
 
 \func{bool}{Create}{\param{int}{ width}, \param{int}{ height}}
 \membersection{wxImage::Create}\label{wximagecreate}
 
 \func{bool}{Create}{\param{int}{ width}, \param{int}{ height}}
@@ -296,6 +313,15 @@ Gets the green value of the mask colour.
 
 Gets the red value of the mask colour.
 
 
 Gets the red value of the mask colour.
 
+\membersection{wxImage::GetPalette}\label{wximagegetpalette}
+
+\constfunc{const wxPalette\&}{GetPalette}{\void}
+
+Returns the palette associated with the image. Currently the palette is only
+used in ConvertToBitmap under Windows.
+
+Eventually wxImage handlers will set the palette if one exists in the image file.
+
 \membersection{wxImage::GetSubImage}\label{wximagegetsubimage}
 
 \constfunc{wxImage}{GetSubImage}{\param{const wxRect\&}{ rect}}
 \membersection{wxImage::GetSubImage}\label{wximagegetsubimage}
 
 \constfunc{wxImage}{GetSubImage}{\param{const wxRect\&}{ rect}}
@@ -319,6 +345,45 @@ Gets the width of the image in pixels.
 
 Returns TRUE if there is a mask active, FALSE otherwise.
 
 
 Returns TRUE if there is a mask active, FALSE otherwise.
 
+\membersection{wxImage::GetOption}\label{wximagegetoption}
+
+\constfunc{wxString}{GetOption}{\param{const wxString\&}{ name}}
+
+Gets a user-defined option. The function is case-insensitive to {\it name}.
+
+For example, when saving as a JPEG file, the option {\bf quality} is
+used, which is a number between 0 and 100 (0 is terrible, 100 is very good).
+
+\wxheading{See also}
+
+\helpref{wxImage::SetOption}{wximagesetoption},\rtfsp
+\helpref{wxImage::GetOptionInt}{wximagegetoptionint},\rtfsp
+\helpref{wxImage::HasOption}{wximagehasoption}
+
+\membersection{wxImage::GetOptionInt}\label{wximagegetoptionint}
+
+\constfunc{int}{GetOptionInt}{\param{const wxString\&}{ name}}
+
+Gets a user-defined option as an integer. The function is case-insensitive to {\it name}.
+
+\wxheading{See also}
+
+\helpref{wxImage::SetOption}{wximagesetoption},\rtfsp
+\helpref{wxImage::GetOption}{wximagegetoption},\rtfsp
+\helpref{wxImage::HasOption}{wximagehasoption}
+
+\membersection{wxImage::HasOption}\label{wximagehasoption}
+
+\constfunc{bool}{HasOption}{\param{const wxString\&}{ name}}
+
+Returns TRUE if the given option is present. The function is case-insensitive to {\it name}.
+
+\wxheading{See also}
+
+\helpref{wxImage::SetOption}{wximagesetoption},\rtfsp
+\helpref{wxImage::GetOption}{wximagegetoption},\rtfsp
+\helpref{wxImage::GetOptionInt}{wximagegetoptionint}
+
 \membersection{wxImage::InitStandardHandlers}
 
 \func{static void}{InitStandardHandlers}{\void}
 \membersection{wxImage::InitStandardHandlers}
 
 \func{static void}{InitStandardHandlers}{\void}
@@ -331,7 +396,7 @@ the user.
 
 \wxheading{See also}
 
 
 \wxheading{See also}
 
-\helpref{wxImageHandler}{wximagehandler}
+\helpref{wxImageHandler}{wximagehandler}
 \helpref{wxInitAllImageHandlers}{wxinitallimagehandlers}
 
 \membersection{wxImage::InsertHandler}
 \helpref{wxInitAllImageHandlers}{wxinitallimagehandlers}
 
 \membersection{wxImage::InsertHandler}
@@ -458,7 +523,6 @@ Saves a image in the given stream.
 \twocolitem{{\bf wxBITMAP\_TYPE\_PNG}}{Save a PNG image file.}
 \twocolitem{{\bf wxBITMAP\_TYPE\_PCX}}{Save a PCX image file (tries to save as 8-bit if possible, falls back to 24-bit otherwise).}
 \twocolitem{{\bf wxBITMAP\_TYPE\_PNM}}{Save a PNM image file (as raw RGB always).}
 \twocolitem{{\bf wxBITMAP\_TYPE\_PNG}}{Save a PNG image file.}
 \twocolitem{{\bf wxBITMAP\_TYPE\_PCX}}{Save a PCX image file (tries to save as 8-bit if possible, falls back to 24-bit otherwise).}
 \twocolitem{{\bf wxBITMAP\_TYPE\_PNM}}{Save a PNM image file (as raw RGB always).}
-\twocolitem{{\bf wxBITMAP\_TYPE\_TIF}}{Save a TIFF image file.}
 \end{twocollist}}
 
 \docparam{mimetype}{MIME type.}
 \end{twocollist}}
 
 \docparam{mimetype}{MIME type.}
@@ -485,6 +549,13 @@ mimetype to the named file}
 \end{twocollist}}
 }
 
 \end{twocollist}}
 }
 
+\membersection{wxImage::Mirror}\label{wximagemirror}
+
+\constfunc{wxImage}{Mirror}{\param{bool}{ horizontally = TRUE}}
+
+Returns a mirrored copy of the image. The parameter {\it horizontally}
+indicates the orientation.
+
 \membersection{wxImage::Replace}\label{wximagereplace}
 
 \func{void}{Replace}{\param{unsigned char}{ r1}, \param{unsigned char}{ g1}, \param{unsigned char}{ b1},
 \membersection{wxImage::Replace}\label{wximagereplace}
 
 \func{void}{Replace}{\param{unsigned char}{ r1}, \param{unsigned char}{ g1}, \param{unsigned char}{ b1},
@@ -505,6 +576,25 @@ Returns the (modified) image itself.
 
 \helpref{Scale}{wximagescale}
 
 
 \helpref{Scale}{wximagescale}
 
+\membersection{wxImage::Rotate}\label{wximagerotate}
+
+\func{wxImage}{Rotate}{\param{double}{ angle}, \param{const wxPoint\& }{rotationCentre},
+ \param{bool}{ interpolating = TRUE}, \param{wxPoint*}{ offsetAfterRotation = NULL}}
+
+Rotates the image about the given point, by {\it angle} radians. Passing TRUE
+to {\it interpolating} results in better image quality, but is slower. If the
+image has a mask, then the mask colour is used for the uncovered pixels in the
+rotated image background. Else, black (rgb 0, 0, 0) will be used.
+
+Returns the rotated image, leaving this image intact.
+
+\membersection{wxImage::Rotate90}\label{wximagerotate90}
+
+\constfunc{wxImage}{Rotate90}{\param{bool}{ clockwise = TRUE}}
+
+Returns a copy of the image rotated 90 degrees in the direction
+indicated by {\it clockwise}.
+
 \membersection{wxImage::Scale}\label{wximagescale}
 
 \constfunc{wxImage}{Scale}{\param{int}{ width}, \param{int}{ height}}
 \membersection{wxImage::Scale}\label{wximagescale}
 
 \constfunc{wxImage}{Scale}{\param{int}{ width}, \param{int}{ height}}
@@ -514,7 +604,7 @@ scaling bitmaps in general as the only other way to scale bitmaps
 is to blit a wxMemoryDC into another wxMemoryDC.
 
 It may be mentioned that the GTK port uses this function internally
 is to blit a wxMemoryDC into another wxMemoryDC.
 
 It may be mentioned that the GTK port uses this function internally
-to scale bitmaps when using mapping mode in wxDC. 
+to scale bitmaps when using mapping modes in wxDC. 
 
 Example:
 
 
 Example:
 
@@ -559,9 +649,33 @@ Specifies whether there is a mask or not. The area of the mask is determined by
 
 Sets the mask colour for this image (and tells the image to use the mask).
 
 
 Sets the mask colour for this image (and tells the image to use the mask).
 
+\membersection{wxImage::SetOption}\label{wximagesetoption}
+
+\func{void}{SetOption}{\param{const wxString\&}{ name}, \param{const wxString\&}{ value}}
+
+\func{void}{SetOption}{\param{const wxString\&}{ name}, \param{int}{ value}}
+
+Sets a user-defined option. The function is case-insensitive to {\it name}.
+
+For example, when saving as a JPEG file, the option {\bf quality} is
+used, which is a number between 0 and 100 (0 is terrible, 100 is very good).
+
+\wxheading{See also}
+
+\helpref{wxImage::GetOption}{wximagegetoption},\rtfsp
+\helpref{wxImage::GetOptionInt}{wximagegetoptionint},\rtfsp
+\helpref{wxImage::HasOption}{wximagehasoption}
+
+\membersection{wxImage::SetPalette}\label{wximagesetpalette}
+
+\func{void}{SetPalette}{\param{const wxPalette\&}{ palette}}
+
+Associates a palette with the image. The palette may be used in ConvertToBitmap (MSW only at present)
+or in file save operations (none as yet).
+
 \membersection{wxImage::SetRGB}\label{wximagesetrgb}
 
 \membersection{wxImage::SetRGB}\label{wximagesetrgb}
 
-\func{void}{SetRGB}{\param{int }{x}, \param{int }{y}, \param{unsigned char }{red}, \param{unsigned char }{blue}, \param{unsigned char }{green}}
+\func{void}{SetRGB}{\param{int }{x}, \param{int }{y}, \param{unsigned char }{red}, \param{unsigned char }{green}, \param{unsigned char }{blue}}
 
 Sets the pixel at the given coordinate. This routine performs bounds-checks
 for the coordinate so it can be considered a safe way to manipulate the
 
 Sets the pixel at the given coordinate. This routine performs bounds-checks
 for the coordinate so it can be considered a safe way to manipulate the
@@ -641,7 +755,7 @@ created by IJG.)
 
 \wxheading{See also}
 
 
 \wxheading{See also}
 
-\helpref{wxImage}{wximage}
+\helpref{wxImage}{wximage}
 \helpref{wxInitAllImageHandlers}{wxinitallimagehandlers}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 \helpref{wxInitAllImageHandlers}{wxinitallimagehandlers}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -721,8 +835,8 @@ TRUE if the operation succeeded, FALSE otherwise.
 
 \wxheading{See also}
 
 
 \wxheading{See also}
 
-\helpref{wxImage::LoadFile}{wximageloadfile}\\
-\helpref{wxImage::SaveFile}{wximagesavefile}\\
+\helpref{wxImage::LoadFile}{wximageloadfile}
+\helpref{wxImage::SaveFile}{wximagesavefile}
 \helpref{wxImageHandler::SaveFile}{wximagehandlersavefile}
 
 \membersection{wxImageHandler::SaveFile}\label{wximagehandlersavefile}
 \helpref{wxImageHandler::SaveFile}{wximagehandlersavefile}
 
 \membersection{wxImageHandler::SaveFile}\label{wximagehandlersavefile}
@@ -743,8 +857,8 @@ TRUE if the operation succeeded, FALSE otherwise.
 
 \wxheading{See also}
 
 
 \wxheading{See also}
 
-\helpref{wxImage::LoadFile}{wximageloadfile}\\
-\helpref{wxImage::SaveFile}{wximagesavefile}\\
+\helpref{wxImage::LoadFile}{wximageloadfile}
+\helpref{wxImage::SaveFile}{wximagesavefile}
 \helpref{wxImageHandler::LoadFile}{wximagehandlerloadfile}
 
 \membersection{wxImageHandler::SetName}
 \helpref{wxImageHandler::LoadFile}{wximagehandlerloadfile}
 
 \membersection{wxImageHandler::SetName}
@@ -767,24 +881,23 @@ Sets the handler extension.
 
 \docparam{extension}{Handler extension.}
 
 
 \docparam{extension}{Handler extension.}
 
-\membersection{wxImageHandler::SetType}
+\membersection{wxImageHandler::SetMimeType}\label{wximagehandlersetmimetype}
 
 
-\func{void}{SetType}{\param{long }{type}}
+\func{void}{SetMimeType}{\param{const wxString\& }{mimetype}}
 
 
-Sets the handler type.
+Sets the handler MIME type.
 
 \wxheading{Parameters}
 
 
 \wxheading{Parameters}
 
-\docparam{name}{Handler type.}
-
+\docparam{mimename}{Handler MIME type.}
 
 
-\membersection{wxImageHandler::SetMimeType}
+\membersection{wxImageHandler::SetType}
 
 
-\func{void}{SetMimeType}{\param{const wxString\& }{mimetype}}
+\func{void}{SetType}{\param{long }{type}}
 
 
-Sets the handler MIME type.
+Sets the handler type.
 
 \wxheading{Parameters}
 
 
 \wxheading{Parameters}
 
-\docparam{mimename}{Handler MIME type.}
+\docparam{name}{Handler type.}