procedure SperrTextOut(cnv: TCanvas; x, y, bkgrd, weite: integer; s: string);
var merk: integer;
begin
merk := GetTextCharacterExtra(cnv.handle);
SetBkMode(cnv.handle, bkgrd);
SetTextCharacterExtra(cnv.handle, weite);
cnv.TextOut(x, y, s);
SetTextCharacterExtra(cnv.handle, merk);
end;
// Beispielaufruf
procedure TForm1.Button2Click(Sender: TObject);
begin
canvas.font.name := 'Courier New';
canvas.font.size := 12;
sperrtextout(canvas, 80, 160, TRANSPARENT, 4, 'Gesperrter Text');
canvas.textout(80, 180, 'Normaler Text');
canvas.brush.color := clyellow;
sperrtextout(canvas, 80, 200, OPAQUE, -3, 'Gedrängter Text');
end;