
1 qwjhb 2018-05-06 21:39:48 +08:00 python 有个库的 现在模板里建好书签就行 |
2 lpd0155 2018-05-06 22:05:14 +08:00 via Android Docxtpl 了解一下 |
3 lpd0155 2018-05-06 22:06:35 +08:00 via Android Docx-mailmerge 也是可以的,比较适合你说的这个情景 |
4 ethanlu 2018-05-06 22:08:11 +08:00 我是用 excel+word 用 vba 做的 |
5 xiaoheijw 2018-05-07 09:28:59 +08:00 伸手党啊 |
6 holajamc 2018-05-07 10:21:43 +08:00 docxtpl 可以,但是如果你的数据足够大的话可能会随时 GG。 如果你试过的话应该知道 office 都是基于 xml 实现的,那么很简单了,用 docxtpl 的思想,用 jinja2 书写模板之后修改 document.xml 中的部分 xml 标签隔断,渲染模板最后再压缩回去~ |
12 jijiwaiwai 2018-05-07 13:39:05 +08:00 docx 就是一个 zip,python 解压之后只需要修改 xml 文件的内固定位置的内容就行,在打包就行了 |
13 qile1 2018-05-08 00:44:41 +08:00 via Android @holajamc 能说的详细些不?没看懂,html 用 jinja2 替换弄过,world 的 doc 文档不是不太开源,怎么会和 xml 有关系 能说说具体实现方式不 |
14 holajamc 2018-05-08 08:51:12 +08:00 @qile1 你把 word 的 docx 解压会发现就是一个 zip 压缩包,其中最关键的部分是 word/document.xml 去更改里面的内容就可以啦~ |
15 qile1 2018-05-08 22:16:04 +08:00 via Android @holajamc 那是不是我就可以用 docx 做模板了 xml 里面设置项目的替换,用 jinja2 替换,然后 zip 压缩改名为 docx 后缀,以前见有的把 html 格式作为模板,保存在数据库的是 xml 文件,估计和这个类似 |
16 holajamc 2018-05-09 09:09:54 +08:00 @qile1 是的呀,提供一个我目前用的正则处理 xml 标签隔断的代码~ https://github.com/JamCh01/simple_template/blob/master/simple_tamplate/tools.py#L39 |
17 LokiSharp 2018-05-09 09:32:51 +08:00 直接用 Word 的模板系统不就好了。。。。。。dotx 了解一下 |