JCL Help:BlockTransfer

From Project JEDI Wiki
Jump to navigationJump to search


Summary

The summary for this help topic does not exist, edit this page

Pascal

 procedure BlockTransfer(Dst: TJclBitmap32; DstX: Integer; DstY: Integer; Src: TJclBitmap32; SrcRect: TRect; CombineOp: TDrawMode);


Description

BlockTransfer is similar to the BitBlt function from Windows GDI. It performs copying of a bitmap fragment specified by SrcRect into location (DstX, DstY) with optional alpha blending or using user-specified combining function.
If CombineOp=dmOpaque, the fragment simply replaces destination pixels. In dmBlend mode it is blended to destination using its alpha channel and MasterAlpha property. In dmCusom mode, the function calls CombineCallBack function for pixel combining.
It is not required for DstRect and SrcRect to lie entirely inside the corresponding bitmap, since the function provides necessary clipping.
The result is not specified when transferring data inside the same bitmap (Src=Dst) and if in the same time SrcRect intersects with DstRect. In this case it is recommended to use a temporary bitmap buffer.
Neither Src nor Dst bitmaps may be equal to nil. In this case, function will generate an exception. They may be empty however, in this case no transformation will be performed.
This routine is used in TJclBitmap32.Draw and TJclBitmap32.DrawTo methods.


See Also

TJclBitmap32.Draw TJclBitmap32.DrawTo TJclBitmap32.MasterAlpha StretchTransfer TJclBitmap32 TDrawMode TPixelCombineEvent TRect


About

Unit

JclGraphics


Donator

Alex Denissov


Platforms

VCL


Contribute to this help topic

This documentation wiki is based on the collaborative effort of Project JEDI users. Your edits are welcome in order to improve documentation quality: edit this page