#include "ltwrappr.h"
virtual L_INT LBitmapBase::Create(uWidth=100, uHeight=100, uBitsPerPixel=24, uOrder= ORDER_BGR, pPalette=NULL, uViewPerspective=TOP_LEFT, uMemory=TYPE_CONV, pData=NULL, dwSize=0)
L_UINT uWidth; |
the desired initial bitmap width |
L_UINT uHeight; |
the desired initial bitmap height |
L_UINT uBitsPerPixel; |
bits per pixel for the bitmap |
L_UINT uOrder; |
the color order |
LPRGBQUAD pPalette; |
pointer to an array of RGBQUAD structures |
L_UINT uViewPerspective; |
the desired view perspective for the bitmap |
L_UINT uMemory; |
the type of memory |
L_UCHAR *pData; |
data pointer |
L_UINT32 dwSize; |
size of the data buffer pointed to by pData |
Creates a new bitmap in the bitmap object.
Parameter | Description | |
uWidth | The desired initial bitmap width. | |
uHeight | The desired initial bitmap height. | |
uBitsPerPixel | The number of bits per pixel. Valid values are 0, 1, 2, 3, 4, 5, 6, 7, 8, 12, 16, 24, 32, 48, and 64. | |
Use 0 to create an 8-bit grayscale bitmap. In that case, the function ignores the uOrder and pPalette parameters. | ||
uOrder | The color order for 16-, 24-, and 32-bit bitmaps. If the resultant bitmap is less than 16 bits per pixel, this will have no effect since palletized images have no order. Possible values are: | |
Value | Meaning | |
ORDER_RGB | [0] Red, green, and blue color order in memory | |
ORDER_BGR | [1] Blue, green, and red color order in memory | |
ORDER_GRAY | [2] 12 or 16-bit grayscale image. 12 and 16-bit grayscale images are only supported in the Document/Medical toolkits. | |
ORDER_RGBORGRAY | [3] Load the image as red, green, blue OR as a 12 or 16-bit grayscale image. 12 and 16-bit grayscale images are supported in the Document/Medical toolkits only. | |
ORDER_BGRORGRAY | [4] Load the image as blue, green, red OR as a 12 or 16-bit grayscale image. 12 and 16-bit grayscale images are supported in the Document/Medical toolkits only. | |
pPalette | Pointer to an array of RGBQUAD structures that contains palette info. Pass NULL to use LEAD's fixed palette. | |
uViewPerspective | The desired view perspective for the bitmap. For valid values, refer to Accounting for View Perspective. | |
uMemory | The type of memory to use when creating the bitmap. Possible values are: | |
Value | Meaning | |
TYPE_CONV | [0x0001] Use conventional memory if the image will fit, otherwise swap to disk. | |
TYPE_COMPRESSED | [0x0200] (Document/Medical only) Allocate an RLE-compressed bitmap. You can use this flag with TYPE_CONV. For more information, refer to Speeding Up 1-Bit Documents. | |
TYPE_SUPERCOMPRESSED | [0x0400] (Document/Medical only) Keep images compressed in memory. This option causes slow access, but very low memory usage. This option is available only for 1-bit, 8-bit grayscale and 24-bit images. | |
pData | Data pointer that will contain the bitmap data when uMemory is TYPE_USER. If pData is NULL, the data pointer must be passed later, by calling LBitmapBase::SetDataPointer, before the bitmap can be used. | |
dwSize | Size of the data buffer pointed to by pData. This should be at least pBitmap->Size. This parameter is only valid when uMemory is set to TYPE_USER. |
SUCCESS |
The function was successful. |
< 1 |
An error occurred. Refer to Return Codes. |
Call this function to create a new bitmap in the bitmap object with the desired dimensions and view perspective.
Some image processing functions, such as LBitmapBase::Rotate and LBitmapBase::ColorRes, need to re-allocate the image data. If you create a bitmap with TYPE_USER, and pass it to these functions, they will change the bitmap to TYPE_CONV and re-allocate memory. Your original data will no longer be used.
Support for 12 and 16-bit grayscale images is only available in the Document/Medical toolkits.
You can specify 0 bits per pixel to create an 8-bit grayscale bitmap. In that case, the function ignores the uOrder and pPalette parameters.
Required DLLs and Libraries
LTDIS For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application. |
Win32, x64.
Functions: |
LBitmapBase::Free, LBitmapBase::Allocate, LBitmapBase::Initialize, Class Members |
Topics: |
L_INT LBitmapBase__CreateExample()
{
L_INT nRet;
LBitmapBase MyBitmap;
nRet = MyBitmap.Create(100, 200, 24, ORDER_BGR, NULL, TOP_LEFT, TYPE_CONV);
return nRet;
}
Raster .NET | C API | C++ Class Library | JavaScript HTML5
Document .NET | C API | C++ Class Library | JavaScript HTML5
Medical .NET | C API | C++ Class Library | JavaScript HTML5
Medical Web Viewer .NET