type
TCanvasHelper = class helper for Graphics.TCanvas
public
procedure TextOutlined(AX, AY, AOutlineWidth: Integer; AOutlineColor: TColor; const AText: String);
end;
procedure TCanvasHelper.TextOutlined(AX, AY, AOutlineWidth: Integer; AOutlineColor: TColor; const AText: String);
var
OldFontColor: TColor;
OldBrushStyle: TBrushStyle;
begin
OldFontColor := Font.Color;
OldBrushStyle := Brush.Style;
Font.Color := AOutlineColor;
Brush.Style := bsClear;
TextOut(AX - AOutlineWidth, AY - AOutlineWidth, AText);
TextOut(AX + AOutlineWidth, AY - AOutlineWidth, AText);
TextOut(AX + AOutlineWidth, AY + AOutlineWidth, AText);
TextOut(AX - AOutlineWidth, AY + AOutlineWidth, AText);
Font.Color := OldFontColor;
TextOut(AX, AY, AText);
Brush.Style := OldBrushStyle;
end;