go-template-docx基于golang模板标准库,因此它继承了它的模板语法来解析docx文件中的标记。docx文档的模板引擎,支持图像加载、循环和图表
该库不会更改原始文件,仅将其读取到内存中以输出具有提供的模板值的新文件。
这是报告自动化游戏规则改变者
- 支持go1.18+
- 基于golang模板库语法,具有以下功能:
- 文本替换
- 循环
- 条件语句
- 数组索引
- 嵌套结构/数组
- 支持图像(png| jpg)
- 支持嵌入式图表模板:
- 1#template函数将图表单元格设置为可读数字,以生成图形化的可评估图表
- 支持表格模板化
首先,你需要创建一个对象的实例来加载docx文件并获取高级API,
DocxTemplate, err := gotemplatedocx.NewDocxTemplateFromFilename(docxFilename)
if err != nil {
// handle error
}
在获得DocxTemplate对象之后,它公开了基于原始模板创建新docx文件的方法,让我们来看看每个方法的用法
加载图片:
myImagePngBytes, _ := os.ReadFile("myimage.png")
DocxTemplate.Media("myimagealias.png", myImagePngBytes)
这里的templateValues变量可以是任何json可编组的值,结构体字段将用作docx中的键,以搜索访问该值
err := DocxTemplate.Apply(templateValues)
if err != nil {
// handle error
}
将新docx保存为新文件
err := DocxTemplate.Save(outputFilename)
if err != nil {
// handle error
}
更多点击标题