/// <summary>
/// Set font family and font size on all text fields for consistency
/// </summary>
/// <param name="stamperFields">
/// PdfStamper.AcroFields - so we can set the form field value here.
/// </param>
/// <param name="family">BaseFont</param>
/// <param name="size">Desired size</param>
public static void SetTemplateFont(AcroFields stamperFields, BaseFont family, float size)
{
// ignore everything except text fields
var textFields = stamperFields.Fields.Keys
.Where(x => stamperFields.GetFieldType(x) == AcroFields.FIELD_TYPE_TEXT
&& GetFontSize(stamperFields, x) != 0f
)
.ToDictionary(k => k);
Console.WriteLine(string.Join(" :: ", textFields.Keys.ToArray()));
foreach (var key in textFields.Keys)
{
stamperFields.SetFieldProperty(key, "textfont", family, null);
stamperFields.SetFieldProperty(key, "textsize", size, null);
}
}