Solución:
Intente lo siguiente:
Font header = new Font(Font.FontFamily.TIMES_ROMAN, 15f, Font.BOLD | Font.UNDERLINE, BaseColor.BLACK);
Como alternativa al uso de Font
para subrayar el texto, también puede utilizar el setUnderline()
método que está disponible para el Chunk
clase. Cuando usa la solución explicada en la respuesta por Joachim Isaksson, puede elegir el ancho de línea de la línea, ni la distancia desde la línea de base del texto. los setUnderline()
El método te da toda esa libertad.
Lea mi respuesta a la pregunta ¿Cómo tachar texto usando iText? para más información.
Eche un vistazo a estos ejemplos:
Chunk chunk1 = new Chunk("0123456789");
chunk1.SetUnderline(2, -3);
document.Add(new Phrase(chunk1));
Chunk chunk2 = new Chunk("0123456789");
chunk2.SetUnderline(2, 3);
document.Add(new Phrase(chunk2));
En ambos casos, la línea que se traza tendrá un grosor de 2 unidades de usuario en lugar de la unidad predeterminada de 1 usuario. En chunk1
la línea se dibujará 3 unidades de usuario debajo del texto (esto es subrayar funcionalidad). En chunk2
, la línea se dibujará por encima de la línea de base (esto es tachado funcionalidad).
He usado así:
Dim font8Underline As Font = FontFactory.GetFont("ARIAL", 8, Font.BOLD)
font8Underline.SetStyle(Font.UNDERLINE)