本文将记录如何生成文件并将其转换为结尾。录制的代码是实际业务场景中的成功代码,并且没有阶梯式台阶的过程。跳到零件,可以在该模块中查看最终效果图。
如果有更好的解决方案,也欢迎您讨论并分享评论领域?
本文的演示存储地址:https://github.com/chicko1108/docxtemplateer-demo
旧铁,没什么可说的,第一个链接:docxtempler |您的应用程序中的Word,PowerPoint,Excel生成用户
它是基于生成最终文件的插头。它通过简单的语法将预设数据填充到模板或模板中,以帮助开发人员快速生成最终文件。
因为它基于变量,因此获得了最终文件,因此文件的样式非常可控。在开发过程中,设计人员只需要生成最终产品字,而开发人员可以用相应的一个替换内容(不再需要被设计师追赶以恢复设计草案!)。
它是一个充电库,但它具有免费的开源版本。对于所涉及的业务,可以解决免费版本。
开源版本中包含的功能包括:
除了免费版本外,它还拥有,您也可以访问官方网站查看它。(但是Bai Yan总是最香!)
由于我的业务仅涉及Word和PDF,因此本文仅介绍Word的相关内容。如果需要处理PPT,您可以访问官方网站自己学习。
在了解模板语法之前,我们需要先创建一个模板文件。
该变量使用标签,在文件中输入以下模板:
然后准备以下数据:
最后,我们生成的DOCX文件将是:
有条件的判断开始和结束。最简单的用法是填写类型数据。
然后准备以下数据:
最后,我们生成的DOCX文件将是:
除了类型数据外,我们还可以填写其他类型:
false /空数组不显示非空气数组显示,并显示循环渲染的内部元素对象,并使用对象的内部变量替换{tag}其他真实值。
让我简要地谈论这里的填充:
准备单词模板如下:
准备数据如下:
最后,我们生成的DOCX文件将是:
徽标是相同的,但是应填充相应的变量。
然后,我们填写以下数据:
最后,我们生成的DOCX文件将是:
值得注意的是,周期不仅可以散发普通文本的时期,而且我们还可以散发,包括:周期线和循环整个表格。,我在这里不会重复太多。
从上图可以看出,我在表单的第二行中使用语法进行填充,因此在我们最终生成的文档中,头部和尾巴都不会循环。第二行将渲染多次。结果如下。
图片用于标签。图片的数据需要专门处理,并将引入后一部分。
根据上述语法,我们可以准备相应的单词模板文件,并且应满足大多数方案。准备模板时,固定的文案写作和样式可以直接保留在文档中,包括标题,脚,线,线条和每个段落的间距,文本的字体和大小。其他需要根据真实数据呈现的值,用标签标记。准备模板文件后,您可以开始编写脚本函数。
PS:很好地利用桌子进行布局!
1.获取模板文件
该类用于此处将模板文件转换为其中。注意浏览器的兼容性。
如果您有兼容性的要求,则可以在使用中提供它,但是此库与TS兼容性差,因此我将其在实际代码中使用。
2.生成最终文件(没有图片)
3.准备数据并生成最终文件。接下来,我们准备一个文件输入框(您还可以使用网络请求,或以任何方式获取文件,只要您最终获得二进制数据)以获取模板文件。在同一时间,准备相应的数据填充模板。
4.效果显示模板文件如下:
结果如下:
5.如果需要在模板中使用图片处理,我们需要安装模块。
引入此模块后,您需要在加载模板文件后加载图像模块,然后异步填写数据。
对于带有图片的文档,需要异步加载数据,并且需要将图片数据作为base64处理。上面的代码提供了处理图片的解决方案。如果您有更有效的方法,则可以自己使用它。
图书馆还在中国支持它,其思想基本上与浏览器相同。它可以直接在节点侧使用。官方给出的官方代码示例在下面粘贴。
它是通过模板文件生成单词的库。它可以确保最终样式的最终样式的完整性和恢复。构建代码后,开发人员只需要为类似企业写更多的内容,然后将精力集中在正确的处理上。
使用或其他图表库也可以允许我们生成报告文件。
此外,对于此库,它是库的升级。它具有操作zip文件的能力。它可以直接解压缩或生成ZIP软件包。API如下:
在做这部分业务时,我最初想在前端完成所有工作,但是没有办法直接在客户端上更改该方法。因此,该部分在服务器端得到解决。
首先,您需要在计算机上安装软件,并且可以搜索特定方法。
安装后,将库安装在项目中。该库对的转换方法被封装,该方法只是直接调用:
如果它是邮政编码文件,也可以安装或解压缩,打包。建议在此处使用它,因为文档更丰富并且对TS有更好的支持。
这是我第二次遇到此类业务,因此在学习,录制和共享的心态下,我在平台上分享了内容。我在开发过程中遇到了很多“坑”,并且没有在本文中记录。本文主要基于记录最终成功,与其他有相同需求的家庭共享内容的代码。所有人之后,车轮是如此完美,当然可以很好地利用它!