首页 > 解决方案 > TinyMCE、Django 和 python-docx

问题描述

我正在考虑rich text editor在我的 Django 项目中使用 a 。TinyMCE 看起来是显而易见的解决方案,但我看到输出格式是 html(此处)。目标是存储用户输入,然后使用python-docx(不是 html)在 word 文档中提供它。

你知道有什么解决方案吗?要么是tinyMCE的功能,要么是 ah tml 到保持样式的文字格式转换器,或者可能是另一个类似于 tinymce的富文本编辑器?

更新:

是我发现工作正常的另一个选项。仍然在尝试将 HTML 转换为 Word 而不会丢失样式。对此的解决方案可能如此处pywin32所述但对我没有太大帮助+它仅适用于Windows。

更新2

经过一番挖掘后,我发现pandocpypandoc似乎可以翻译成以下任何一种输出格式: "asciidoc, beamer, commonmark, context, docbook, docbook4, docbook5, docx, dokuwiki, dzslides, epub, epub2, epub3, fb2, gfm, haddock, html, html4, html5, icml, jats, json, latex, man, markdown, markdown_github, markdown_mmd, markdown_phpextra, markdown_strict, mediawiki, ms, muse, native, odt, opendocument, opml, org, plain, pptx, revealjs, rst, rtf, s5, slideous, slidy, tei, texinfo, textile, zimwiki"

我还没有想出如何将这样的输入集成到 python-docx 中。

标签: djangopython-docx

解决方案


我也有同样的挑战。您将需要使用 Python 的 Beautiful Soup 库来遍历 HTML 编辑器中的内容(我使用 Summernote,但任何 HTML 编辑器都应该可以工作),然后将 HTML 标记解析为可用于 python-docx 的格式。Pandoc 和 Pypandoc 将为您转换文件(例如,您从 LateX 文件开始并需要将其转换为 Word),但不会提供需要与 xml/html 相互转换的工具。

祝你好运!


推荐阅读