是否有解决方法,可以在Python中动态添加Microsoft Word脚注?

时间:2019-03-27 23:58:57

标签: python doc python-docx

当前,我正在使用Python Flask构建应用程序,以从sql数据库中存储的数据生成格式化的文档。我的想法是检测文本中的脚注标记并在运行中渲染脚注:

text = ''' This is a sample text {{footnotes:Yes it is!}} It's just that. '''
footnote = text[text.find("{{footnotes:")+12:text.find("}}")]

但是,似乎python-docx暂时没有提供脚注操作,在Python中是否还有其他包(或者node.js,最好不要从头开始重新制作应用程序)添加.doc文件的脚注?

首先制作Markdown文档,然后以某种方式将其转换为具有脚注属性的.docx,这是否可行?

1 个答案:

答案 0 :(得分:1)

python-docx文档(https://python-docx.readthedocs.io/en/latest/user/documents.html):

  

该功能集仍在构建中,因此您尚不能添加或更改标题或脚注之类的内容

不过,您可以按照https://github.com/python-openxml/python-docx/issues/1

所述的xml结构查找它们。

或者在Python: Is there a way I can add a footnote to word document?

上显示一个更好的解决方案

如果我理解此解决方案,他建议实质上创建一个模板,上面带有所需的脚注,然后将其加载到python中。虽然这不是“动态的”,但您也不希望如此。

python-docx的一名开发人员看来,在https://groups.google.com/forum/#!topic/python-docx/4iQoFG2X03I进行了一次对话,他说他将在几个月内不再从事该项目。也许您可以尝试在那里联系他,也可以尝试通过主要的docx网站与他联系,并帮助他构建模块(这样就不必自己处理所有的xml处理)。否则,您将不得不找到另一个解决方案(您提到了Node.js,但我对此并不了解,因此我无法提供帮助)。祝你好运!