How to map Signature field into Word template
Introduction :
As we know , signature field with pen control can not be mapped directly into word template.
This blog will explain how to map signature field into word template.
Implementation :
Steps to Add Signature Field
Step 1 : Create signature Field with data type multiple line of text and maximum length 15000

Step 2: Then in the field properties -> control -> select Pen Control and Add.

In word template ,signature field will map as a text field which contains base 64 separated by comma.
As shown below.

Steps for resolution:
Step 1 : To map signature field in picture format in word template , create new field signature text with data type multiple line of text and maximum length 1048576.

Step 2 : Write plugin. Plugin will trigger on create of record and update of signature field.
Plugin Explanation : Plugin will retrieve the value of signature and separate ” data:image/png;base64 ” string followed by “,” (comma) and save remaining text in newly created signature text field.
Plugin Registration:
- Register a plugin on create and update of account entity
2.Plugin Code
void SignatureUpdate(Entity account)
{
tracingService.Trace("postmsg : " + account);
string signaturetext = string.Empty;
string attributeToUpdate = string.Empty;
Entity AccountUpdate = null;
try
{
AccountUpdate = new Entity();
AccountUpdate.Id = account.Id;
AccountUpdate.LogicalName = account.LogicalName;
if (account.Contains("new_signature") && account["new_signature"] != null)
{
signaturetext = account.GetAttributeValue<string>("new_signature");
attributeToUpdate = "new_signaturetext";
AccountUpdate = ProcessSignature(signaturetext, AccountUpdate, attributeToUpdate);
}
service.Update(AccountUpdate);
}
catch (Exception)
{
throw;
}
}
public Entity ProcessSignature(string signaturetext, Entity Account, string attribute)
{
//to split base64 and remaining text
string[] substring = signaturetext.Split(',');
Account[attribute] = substring[1];
return Account;
}
3. build the code and update assembly and trigger a plugin

And upload this template .
Result :

