Hi,
Could you please guide us on how to apply a specific font and font size to a document using Aspose.Words.dll.
Thanks,
Kavitha
Hi,
Could you please guide us on how to apply a specific font and font size to a document using Aspose.Words.dll.
Thanks,
Kavitha
@Kofax_Business_Communications,
You can build logic on the following code to change the Font name and Font size of entire Word document:
Document doc = new Document("C:\\temp\\input.docx");
FontChanger changer = new FontChanger();
doc.Accept(changer);
doc.Save("C:\\temp\\20.9.docx");
class FontChanger : DocumentVisitor
{
///
/// Called when a FieldEnd node is encountered in the document.
///
public override VisitorAction VisitFieldEnd(FieldEnd fieldEnd)
{
//Simply change font name
ResetFont(fieldEnd.Font);
return VisitorAction.Continue;
}
///
/// Called when a FieldSeparator node is encountered in the document.
///
public override VisitorAction VisitFieldSeparator(FieldSeparator fieldSeparator)
{
ResetFont(fieldSeparator.Font);
return VisitorAction.Continue;
}
///
/// Called when a FieldStart node is encountered in the document.
///
public override VisitorAction VisitFieldStart(FieldStart fieldStart)
{
ResetFont(fieldStart.Font);
return VisitorAction.Continue;
}
///
/// Called when a Footnote end is encountered in the document.
///
public override VisitorAction VisitFootnoteEnd(Footnote footnote)
{
ResetFont(footnote.Font);
return VisitorAction.Continue;
}
///
/// Called when a FormField node is encountered in the document.
///
public override VisitorAction VisitFormField(FormField formField)
{
ResetFont(formField.Font);
return VisitorAction.Continue;
}
///
/// Called when a Paragraph end is encountered in the document.
///
public override VisitorAction VisitParagraphEnd(Paragraph paragraph)
{
ResetFont(paragraph.ParagraphBreakFont);
return VisitorAction.Continue;
}
///
/// Called when a Run node is encountered in the document.
///
public override VisitorAction VisitRun(Run run)
{
ResetFont(run.Font);
return VisitorAction.Continue;
}
///
/// Called when a SpecialChar is encountered in the document.
///
public override VisitorAction VisitSpecialChar(SpecialChar specialChar)
{
ResetFont(specialChar.Font);
return VisitorAction.Continue;
}
private void ResetFont(Aspose.Words.Font font)
{
font.Name = mNewFontName;
font.Size = mNewFontSize;
}
private string mNewFontName = "Times New Roman";
private double mNewFontSize = 8;
}
Thanks for the quick response