[Overview][Constants][Types][Classes][Procedures and functions][Index] |
[Properties (by Name)] [Methods (by Name)] [Events (by Name)]
Represents a graphical image.
Source position: intfgraphics.pas line 115
type TLazIntfImage = class(TFPCustomImage) |
||
protected |
||
|
||
|
||
procedure SetUsePalette(); override; |
|
|
procedure SetInternalColor(); override; |
|
|
function GetInternalColor(); override; |
|
|
procedure SetInternalPixel(); override; |
|
|
function GetInternalPixel(); override; |
|
|
procedure FreeData; virtual; |
|
|
procedure SetDataDescription(); virtual; |
|
|
procedure ChooseGetSetColorFunctions; virtual; |
|
|
procedure ChooseRawBitsProc(); |
|
|
procedure GetColor_Generic(); |
|
|
procedure GetColor_RGBA_NoPalette(); |
|
|
procedure GetColor_RGB_NoPalette(); |
|
|
procedure GetColor_Gray_NoPalette(); |
|
|
procedure GetColor_GrayAlpha_NoPalette(); |
|
|
procedure GetColor_NULL(); |
|
|
procedure GetColor_BPP32_A8R8G8B8_BIO_TTB(); |
|
|
procedure GetColor_BPP32_A8B8G8R8_BIO_TTB(); |
|
|
procedure GetColor_BPP32_A8G8R8B8_BIO_TTB(); |
|
|
procedure GetColor_BPP32_A8G8B8R8_BIO_TTB(); |
|
|
procedure GetColor_BPP32_A8R8B8G8_BIO_TTB(); |
|
|
procedure GetColor_BPP32_A8B8R8G8_BIO_TTB(); |
|
|
procedure GetColor_BPP32_B8G8R8A8_BIO_TTB(); |
|
|
procedure GetColor_BPP32_R8G8B8A8_BIO_TTB(); |
|
|
procedure GetColor_BPP32_G8B8R8A8_BIO_TTB(); |
|
|
procedure GetColor_BPP32_G8R8B8A8_BIO_TTB(); |
|
|
procedure GetColor_BPP32_B8R8G8A8_BIO_TTB(); |
|
|
procedure GetColor_BPP32_R8B8G8A8_BIO_TTB(); |
|
|
procedure GetColor_BPP32_X8R8G8B8_BIO_TTB(); |
|
|
procedure GetColor_BPP32_X8B8G8R8_BIO_TTB(); |
|
|
procedure GetColor_BPP32_X8G8R8B8_BIO_TTB(); |
|
|
procedure GetColor_BPP32_X8G8B8R8_BIO_TTB(); |
|
|
procedure GetColor_BPP32_X8R8B8G8_BIO_TTB(); |
|
|
procedure GetColor_BPP32_X8B8R8G8_BIO_TTB(); |
|
|
procedure GetColor_BPP32_B8G8R8X8_BIO_TTB(); |
|
|
procedure GetColor_BPP32_R8G8B8X8_BIO_TTB(); |
|
|
procedure GetColor_BPP32_G8B8R8X8_BIO_TTB(); |
|
|
procedure GetColor_BPP32_G8R8B8X8_BIO_TTB(); |
|
|
procedure GetColor_BPP32_B8R8G8X8_BIO_TTB(); |
|
|
procedure GetColor_BPP32_R8B8G8X8_BIO_TTB(); |
|
|
procedure GetColor_BPP24_B8G8R8_BIO_TTB(); |
|
|
procedure GetColor_BPP24_R8G8B8_BIO_TTB(); |
|
|
procedure GetColor_BPP24_G8B8R8_BIO_TTB(); |
|
|
procedure GetColor_BPP24_G8R8B8_BIO_TTB(); |
|
|
procedure GetColor_BPP24_B8R8G8_BIO_TTB(); |
|
|
procedure GetColor_BPP24_R8B8G8_BIO_TTB(); |
|
|
procedure GetMask_Generic(); |
|
|
procedure SetColor_Generic(); |
|
|
procedure SetColor_RGBA_NoPalette(); |
|
|
procedure SetColor_RGB_NoPalette(); |
|
|
procedure SetColor_Gray_NoPalette(); |
|
|
procedure SetColor_GrayAlpha_NoPalette(); |
|
|
procedure SetColor_NULL(); |
|
|
procedure SetColor_BPP32_A8R8G8B8_BIO_TTB(); |
|
|
procedure SetColor_BPP32_A8B8G8R8_BIO_TTB(); |
|
|
procedure SetColor_BPP32_A8G8R8B8_BIO_TTB(); |
|
|
procedure SetColor_BPP32_A8G8B8R8_BIO_TTB(); |
|
|
procedure SetColor_BPP32_A8R8B8G8_BIO_TTB(); |
|
|
procedure SetColor_BPP32_A8B8R8G8_BIO_TTB(); |
|
|
procedure SetColor_BPP32_B8G8R8A8_BIO_TTB(); |
|
|
procedure SetColor_BPP32_R8G8B8A8_BIO_TTB(); |
|
|
procedure SetColor_BPP32_G8B8R8A8_BIO_TTB(); |
|
|
procedure SetColor_BPP32_G8R8B8A8_BIO_TTB(); |
|
|
procedure SetColor_BPP32_B8R8G8A8_BIO_TTB(); |
|
|
procedure SetColor_BPP32_R8B8G8A8_BIO_TTB(); |
|
|
procedure SetColor_BPP32_X8R8G8B8_BIO_TTB(); |
|
|
procedure SetColor_BPP32_X8B8G8R8_BIO_TTB(); |
|
|
procedure SetColor_BPP32_X8G8R8B8_BIO_TTB(); |
|
|
procedure SetColor_BPP32_X8G8B8R8_BIO_TTB(); |
|
|
procedure SetColor_BPP32_X8R8B8G8_BIO_TTB(); |
|
|
procedure SetColor_BPP32_X8B8R8G8_BIO_TTB(); |
|
|
procedure SetColor_BPP32_B8G8R8X8_BIO_TTB(); |
|
|
procedure SetColor_BPP32_R8G8B8X8_BIO_TTB(); |
|
|
procedure SetColor_BPP32_G8B8R8X8_BIO_TTB(); |
|
|
procedure SetColor_BPP32_G8R8B8X8_BIO_TTB(); |
|
|
procedure SetColor_BPP32_B8R8G8X8_BIO_TTB(); |
|
|
procedure SetColor_BPP32_R8B8G8X8_BIO_TTB(); |
|
|
procedure SetColor_BPP24_B8G8R8_BIO_TTB(); |
|
|
procedure SetColor_BPP24_R8G8B8_BIO_TTB(); |
|
|
procedure SetColor_BPP24_G8B8R8_BIO_TTB(); |
|
|
procedure SetColor_BPP24_G8R8B8_BIO_TTB(); |
|
|
procedure SetColor_BPP24_B8R8G8_BIO_TTB(); |
|
|
procedure SetColor_BPP24_R8B8G8_BIO_TTB(); |
|
|
procedure SetMask_Generic(); |
|
|
public |
||
constructor Create(); |
|
Constructor for the class instance. |
constructor CreateCompatible(); |
|
Alternate constructor for the class instance. |
destructor Destroy; override; |
|
Destructor for the class instance. |
procedure Assign(); override; |
|
Stores values from the specified persistent object into the current class instance. |
procedure BeginUpdate; |
|
Increments the internal update counter. |
procedure EndUpdate; |
|
Decrements the internal update counter. |
procedure SetSize(); override; |
|
SetSize - define the height and width of the image. |
function CheckDescription(); virtual; |
|
CheckDescription - looks at the supplied Image Description record and returns True if it matches the actual properties of the image. |
procedure LoadFromDevice(); virtual; |
|
LoadFromDevice - loads the image from the device with specified handle. |
procedure LoadFromBitmap(); virtual; |
|
LoadFromBitmap - loads the image from a Bitmap. |
procedure CreateBitmaps(); virtual; |
|
CreateBitmaps - generates a Bitmap and an optional Mask for the image data. |
procedure SetRawImage(); virtual; |
|
Stores the raw image data in the class instance. |
procedure GetRawImage(); virtual; |
|
Gets the raw image data stored in the class instance and optionally release ownership. |
procedure FillPixels(); virtual; |
|
Sets the color for all pixels in the raw image data to the specified value. |
procedure CopyPixels(); virtual; |
|
|
procedure AlphaBlend(); |
|
Merges a source image with alpha blending. |
procedure AlphaFromMask(); |
|
Gets the alpha value from the mask if needed. |
procedure Mask(); |
|
|
procedure GetXYDataPosition(); |
||
procedure GetXYMaskPosition(); |
||
function GetDataLineStart(); |
|
Returns an pointer to the raw data for a scan line. |
procedure CreateData; virtual; |
|
|
function HasTransparency; virtual; |
|
|
function HasMask; virtual; |
|
|
procedure SetDataDescriptionKeepData(); |
|
|
|
PixelData - the raw image data for the image. |
|
|
MaskData - the raw data for the mask in the image. |
|
property DataDescription: TRawImageDescription; [rw] |
|
DataDescription - the raw description record for the current image. |
property GetInternalColorProc: TLazIntfImageGetPixelProc; [r] |
|
|
property SetInternalColorProc: TLazIntfImageSetPixelProc; [r] |
|
|
property TColors []: TGraphicsColor; [rw] |
|
TColors - the colors available for the specified pixel. |
property Masked []: Boolean; [rw] |
|
Masked - whether the image mask applies at the specified position. |
end; |
|
Represents a graphical image. |
|
| | ||
TFPCustomImage |
||
? | ||
TObject |
TLazIntfImage is a TFPCustomImage descendant which stores the image data as TRawImage, and is therefore able to interchange images directly with the LCL interfaces.
A large number of the protected methods (GetColorxxxxxx and SetColorxxxxxx) deal with direct interface to the operating system at the pixel level.
Usage examples:
1. Loading an .xpm file into a TBitmap:
var BmpHnd,MaskHnd: HBitmap; Bitmap1: TBitmap; IntfImg1: TLazIntfImage; Reader: TLazReaderXPM; begin // create a bitmap (or use an existing one) Bitmap1:=TBitmap.Create; // create the raw image IntfImg1:=TLazIntfImage.Create(0,0); // get the description for the current screen (bitsperpixel, depth, ...) IntfImg1.GetDescriptionFromDevice(0); // create the XPM reader Reader:=TLazReaderXPM.Create; // load the image IntfImg1.LoadFromFile('filename.xpm',Reader); // create the bitmap handles IntfImg1.CreateBitmap(BmpHnd,MaskHnd); // apply handles to the Bitmap1 Bitmap1.Handle:=BmpHnd; Bitmap1.MaskHandle:=MaskHnd; // clean up Reader.Free; IntfImg1.Free; // do something with the Bitmap1 ... end;
2. Saving a TBitmap to an .xpm file:
var BmpHnd,MaskHnd: HBitmap; Bitmap1: TBitmap; IntfImg1: TLazIntfImage; Writer: TLazWriterXPM; begin ... // create the raw image IntfImg1:=TLazIntfImage.Create(0,0); // load the raw image from the bitmap handles IntfImg1.LoadFromBitmap(Bitmap1.Handle,Bitmap1.MaskHandle); // create the XPM writer Writer:=TLazWriterXPM.Create; // save image to file IntfImg1.SaveToFile('filename.xpm',Writer); // clean up Writer.Free; IntfImg1.Free; ... end; }
Version 3.2 | Generated 2024-02-25 | Home |