cómo aplicar propiedades de fuente en mientras pasa html a pdf usando itextsharp

Estoy convirtiendo html a pdf usando itextsharp y quiero establecer el tamaño de fuente para las tags. ¿Cómo puedo hacer esto?

Actualmente estoy usando:

StyleSheet

styles = new StyleSheet(); styles.LoadTagStyle(HtmlTags.SPAN, HtmlTags.FONTSIZE, "9f"); string contents = File.ReadAllText(Server.MapPath("~/PDF TEMPLATES/DeliveryNote.html")); 

Lista

 parsedHtmlElements = HTMLWorker.ParseToList(new StringReader(contents), styles); 

Pero no funcionó.

Las constantes enumeradas en HtmlTags son en realidad un batiburrillo de tags HTML y propiedades y valores HTML y CSS, y puede ser un poco complicado a veces averiguar qué usar.

En su caso, pruebe HtmlTags.SIZE lugar de HtmlTags.FONTSIZE y debería obtener lo que desea.

EDITAR

Nunca he visto un buen tutorial sobre qué propiedades hacen qué, generalmente voy directamente al código fuente. Por ejemplo, en la clase ElementFactory hay un método llamado GetFont() que muestra cómo se analiza la información de la fuente. Específicamente en la línea 130 (de la revisión 229) verá dónde se usa HtmlTags.SIZE . Sin embargo, el valor real para el tamaño se analiza en ChainedProperties en un método llamado AdjustFontSize() . Si lo miras, verás que primero busca un valor que termine en pt , como 12pt . Si lo encuentra, deja caer el pt y analiza el número literalmente. Si no termina con pt salta a HtmlUtilities a un método llamado GetIndexedFontSize() . Este método espera valores como +1 y -1 para tamaños relativos o simplemente enteros como 2 para tamaños indexados. Según la especificación HTML, los agentes de usuario deben aceptar los valores del 1 al 7 para el tamaño de fuente y asignarlos a una lista de tamaño de fuente que aumenta progresivamente. Lo que esto significa es que su valor de 9f realidad no es un valor válido para pasar a esto, probablemente debería pasar 9pt en 9pt lugar.

De todos modos, estás medio para saltar en la fuente para descubrir qué está siendo analizado.