22 Votos

Delphi/Lazarus: Escribir texto con fondo transparente sobre Canvas

Tutorial de Invitado | 11/06/2021 a las 15:00

Usando la función Canvas.TextOut(X, Y, 'Texto') puedo escribir un texto arbitrario en el canvas de un mapa de bits (TBitmap) o un formulario sin ningún problema.

Sin embargo, el problema es que se dibuja automáticamente un fondo de color detrás del texto. Parece como si el texto estuviera escrito en un cuadro que oculta el fondo real del canvas.

Puedo ajustar el color de este fondo usando la propiedad Canvas.Brush.Color, pero hay suficientes situaciones en las que esto no es adecuado. Por ejemplo, cada vez que quiero escribir algún texto en una imagen o cualquier degradado de color. En todos esos casos, el fondo de color se ve muy poco profesional.

Por lo tanto, ¿existe la posibilidad de generar el texto con un fondo transparente en el canvas?

ResponderPositivoNegativo
2Mejor Respuesta2 Votos

Si desea escribir el texto con un fondo transparente, puede establecer el estilo de brush en bsClear antes:

Canvas.Brush.Style := bsClear;
Canvas.TextOut(100, 100, 'Texto Transparente');

Con esto, debería poder escribir su texto sin ningún problema en fondos que no sean de un solo color.
12/06/2021 a las 21:08

ResponderPositivo Negativo
Responder

Sobre el Autor

AvatarEl autor aún no ha agregado una breve descripción del perfil.
Ver Perfil

 

Temas Relacionados

Aviso Importante

Por favor tenga en cuenta: Las contribuciones publicadas en askingbox.com son contribuciones de los usuarios y no deben reemplazar el asesoramiento profesional. No son verificados por independientes y no reflejan necesariamente la opinión de askingbox.com. Aprende más.

Participar

Haga su propia pregunta o escriba su propio artículo en askingbox.com. He aquí cómo.