Skip to content
Member Filters
Show Inherited
Show Protected
Show abstract
GR32_Resamplers🞂BlockTransferFunction

BlockTransfer

Performs unscaled block pixel transfer between source and destination bitmaps.

Declarations ​

pascal
procedure BlockTransfer(Dst: TCustomBitmap32; DstX: Integer; DstY: Integer; DstClip: TRect; Src: TCustomBitmap32; SrcRect: TRect; CombineOp: TDrawMode; CombineCallBack: TPixelCombineEvent = nil);
procedure BlockTransferX(Dst: TCustomBitmap32; DstX, DstY: TFixed; Src: TCustomBitmap32; SrcRect: TRect; CombineOp: TDrawMode; CombineCallBack: TPixelCombineEvent = nil);
Overload Details

Overload 1 ​

pascal
procedure BlockTransfer(Dst: TCustomBitmap32; DstX: Integer; DstY: Integer; DstClip: TRect; Src: TCustomBitmap32; SrcRect: TRect; CombineOp: TDrawMode; CombineCallBack: TPixelCombineEvent = nil);

Copies or blends an integer-aligned sub-rectangle from Src into Dst at integer position (DstX, DstY).

ParameterTypeDescription
DstTCustomBitmap32Destination bitmap.
DstX, DstYIntegerDestination top-left corner coordinates.
DstClipTRectClipping rectangle for the transfer operation.
SrcTCustomBitmap32Source bitmap.
SrcRectTRectSub-rectangle of source bitmap to transfer.
CombineOpTDrawModePixel drawing/combining mode.
CombineCallBackTPixelCombineEventOptional custom pixel combining callback.

Overload 2 ​

pascal
procedure BlockTransferX(Dst: TCustomBitmap32; DstX, DstY: TFixed; Src: TCustomBitmap32; SrcRect: TRect; CombineOp: TDrawMode; CombineCallBack: TPixelCombineEvent = nil);

Copies or blends an integer sub-rectangle from Src into Dst at fixed-point sub-pixel position (DstX, DstY) using bilinear anti-aliasing.

ParameterTypeDescription
DstTCustomBitmap32Destination bitmap.
DstX, DstYTFixedFixed-point destination top-left coordinates.
SrcTCustomBitmap32Source bitmap.
SrcRectTRectSource sub-rectangle.
CombineOpTDrawModePixel combining mode.
CombineCallBackTPixelCombineEventOptional custom pixel combine callback.

Description ​

BlockTransfer performs high-speed direct unscaled pixel transfers from a source bitmap to a destination bitmap with optional clipping and pixel blending. BlockTransferX allows fixed-point fractional offsets for sub-pixel accuracy.