Skip to content
Member Filters
Show Inherited
Show Protected
Show abstract
GR32.Blur🞂HorizontalBlur32Variable

HorizontalBlur32

Directional 1D horizontal Gaussian blur.

Declaration ​

pascal
procedure HorizontalBlur32(ASource, ADest: TBitmap32; Radius: TFloat);
procedure GammaHorizontalBlur32(ASource, ADest: TBitmap32; Radius: TFloat);

Parameters ​

ParameterTypeDescription
ASourceTBitmap32Source 32-bit bitmap to read pixels from.
ADestTBitmap32Destination 32-bit bitmap to receive the horizontally blurred output.
RadiusTFloatBlur radius in pixels.

Description ​

HorizontalBlur32 and GammaHorizontalBlur32 performs a 1D horizontal-only Gaussian blur across bitmap scanlines.

These routines apply the recursive Gaussian filter along horizontal rows without performing the vertical filtering pass, producing horizontal streak or motion blur effects.

Variant Summary ​

FunctionDescription
HorizontalBlur321D horizontal Gaussian blur in standard non-linear sRGB space.
GammaHorizontalBlur321D horizontal Gaussian blur in linear light space (gamma-aware).

Example ​

pascal
var
  Src, Dst: TBitmap32;
begin
  Src := TBitmap32.Create;
  Dst := TBitmap32.Create;
  try
    Src.LoadFromFile('photo.png');

    // Apply horizontal motion blur with a 15.0 pixel radius
    HorizontalBlur32(Src, Dst, 15.0);

    Dst.SaveToFile('horizontal_motion_blur.png');
  finally
    Src.Free;
    Dst.Free;
  end;
end;

See also ​