Problem
You create a Word document containing a merge field formatted with a Bar Code font, such as Code 39. You use the WordTemplate class to process the document. However, in the generated document, the merge field is populated with text in the Times New Roman font. The problem is illustrated in the figures below:
Merge field | |
Formatted merge field | |
Output |
Solution
A bar code field must begin and end with a delimiter character. For the Code 39 font, this required delimiter is represented in human-readable text as the * character.
When you create the merge field in a Word document, insert the * character into the merge field using merge field switches. Then you can format the merge field with a bar code font. The procedure is as follows:
1.
From the Word menu, select Insert, Field.
2.
In the dialog box, select MergeField and fill in the fields as illustrated in the figure below. Use an appropriate name for Field name.
After you close the dialog box, the merge field should appear as follows:
3.
Select the entire merge field and format it with a bar code font, such as Code 39.
In the generated document, the merge field should now contain the text in the bar code font. The following figure shows the results for the string *0123456789*.
To see that this does in fact represent the correct string, you can select the text and choose a different, readable font, or copy and paste the text into a text editor.