В настоящее время я только передаю параметр из кода Java во FreeMarker, используя XDocReportRegistry
.Мой шаблон DOCX выглядит следующим образом:
{ MERGEFIELD ${name} \* MERGEFORMAT }
Я добавляю параметр на стороне Java, как это:
templateMap.put("name","Frank")
, который отлично работает.
Однако, когда я встраиватьдокумент вручную (с помощью dragndrop), msword создает это поле:
{ EMBED package }
Я не вижу ни одной подсказки, которая указывает имя файла.Как мне добавить файл из кода?Я ищу что-то такое:
{ EMBED ${file} package }
templateMap.put("file",<Binarydata>)
или
templateMap.put("file","filepath(and template engine will take care the rest)")
Примечание: я пришел к директиве включения https://freemarker.apache.org/docs/ref_directive_include.html Я пытался использовать ее:
{ MERGEFIELD <#include "myfilepath.docx"> \* MERGEFORMAT }
Но он не отображается в моем документе и, похоже, вставит содержимое файла в другой.Это не то, что я хочу, я хотел бы, чтобы прикрепленный документ отображался как встроенный.