| [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 CreateCompatible(); |
||
destructor Destroy; override; |
|
|
procedure Assign(); override; |
||
procedure BeginUpdate; |
|
|
procedure EndUpdate; |
|
|
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 from the image data |
procedure SetRawImage(); virtual; |
|
|
procedure GetRawImage(); virtual; |
|
|
procedure FillPixels(); virtual; |
|
|
procedure CopyPixels(); virtual; |
||
procedure AlphaBlend(); |
||
procedure AlphaFromMask(); |
|
AlphaFromMask - gets the alpha value from the mask if AKeepAlpha is True (default condition) |
procedure Mask(); |
||
procedure GetXYDataPosition(); |
||
procedure GetXYMaskPosition(); |
||
function GetDataLineStart(); |
|
Returns an pointer to the scanline raw data. |
procedure CreateData; virtual; |
||
function HasTransparency; virtual; |
||
function HasMask; virtual; |
||
procedure SetDataDescriptionKeepData(); |
||
property PixelData: PByte; [r] |
|
PixelData - the raw data for the current pixel |
property MaskData: PByte; [r] |
|
MaskData - the raw mask data for the current pixel |
property DataDescription: TRawImageDescription; [rw] |
|
DataDescription - the raw description record for the current image |
property TColors []: TGraphicsColor; [rw] |
|
TColors - the colours available for the present position |
property Masked []: Boolean; [rw] |
|
Masked - whether the image mask applies at the current position |
end; |
|
Represents a graphical image. |
|
| | | ||
TFPCustomImage |
||
| ? | ||
TObject |
This descendant of TFPCustomImage 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 a .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 a .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;
}
| lazarus-ccr.sourceforge.net |