We set the “Heading 1” style font to Arial, then did a simple mail merge without regions. Afterwards, the font is set to Times New Roman, even though it should be Arial as defined in the styles. This only occurs when InsertHtml is used – if that line is commented out, the font shows up properly.
Code
var inputStream = System.IO.File.OpenRead(@“C:\Users\Tim\Dropbox\WordMerge.docx”);
var document = new Aspose.Words.Document(inputStream);
document.MailMerge.FieldMergingCallback = new HandleMergeField();
document.MailMerge.Execute(new string[] {
"Position Summary:richtext",
"Position Title"
}, new object[] {
"<p>Summary</p>",
"Title"
});
document.Save(@"c:\Users\Tim\Dropbox\MergeFieldText_out.docx");</pre></code>
Merge Field Handler
class HandleMergeField : IFieldMergingCallback
{
void IFieldMergingCallback.FieldMerging(FieldMergingArgs e)
{
var builder = new DocumentBuilder(e.Document);
if (e.FieldName.ToLower().Contains(":richtext"))
{
builder.MoveToMergeField(e.FieldName);
builder.InsertHtml((string)e.FieldValue);
return;
}
}
void IFieldMergingCallback.ImageFieldMerging(ImageFieldMergingArgs e)
{
}
}</pre></code></div>