Canvas - texto com preenchimento bitmap

Top  Previous  Next

// Este exemplo desenha "Flavio Junior" no form com um preenchimento

 

procedure DesenhaTextoDiferente(Canvas: TCanvas);

var

  Bitmap : TBitmap;

begin

  Bitmap := TBitmap.Create;

  try

    Bitmap.LoadFromFile('D:\Fontes\Dica 092\Egito.bmp');

    With Canvas do

    begin

      // seta tamanho do fonte

      Font.Name  := 'Arial';

      Font.Size  := 64;

      Font.Style := [fsBold];

      // modo transparente para não desenhar quadro em volta do texto

      SetBKMode(Handle,TRANSPARENT);

      // inicia o caminho

      BeginPath(Handle);

      // desenha o texto

      TextOut(20,20,'Flavio Junior');

      EndPath(Handle);

      // seta Brush para o bitmap carregado

      Brush.Bitmap := Bitmap;

      SetPolyFillMode(Handle,WINDING);

      // preenche o caminho com o bitmap

      FillPath(Handle);

    end;

  finally

    Bitmap.Free;

  end;

end;