The CopyImage function creates a new image (icon, cursor, or bitmap) and copies the attributes of the specified image to the new one. If necessary, the function stretches the bits to fit the desired size of the new image.
HANDLE CopyImage(
HANDLE hImage, |
// handle to the image to copy |
UINT uType, |
// type of image to copy |
int cxDesired, |
// desired width of new image |
int cyDesired, |
// desired height of new image |
UINT fuFlags |
// copy flags |
); |
Value |
Meaning |
IMAGE_BITMAP |
Copies a bitmap. |
IMAGE_CURSOR |
Copies a cursor. |
IMAGE_ICON |
Copies an icon. |
Value |
Meaning |
LR_COPYDELETEORG |
Deletes the original image after creating the copy. |
LR_COPYRETURNORG |
Creates an exact copy of the image, ignoring the cxDesired and cyDesired parameters. |
LR_MONOCHROME |
Creates a new monochrome image. |
LR_COPYFROMRESOURCE |
Tries to reload an icon or cursor resource from the original resource file rather than simply copying the current image. This is useful for creating a different-sized copy when the resource file contains multiple sizes of the resource. Without this flag, CopyImage stretches the original image to the new size. If this flag is set, CopyImage uses the size in the resource file closest to the desired size. This will succeed only if hImage was loaded by LoadIcon or LoadCursor, or by LoadImage with the LR_SHARED flag. |
If the function succeeds, the return value is the handle to the newly created image.
If the function fails, the return value is NULL. To get extended error information, call GetLastError.
See: