5.7 KiB
5.7 KiB
Export to Word(导出为 Word)
Action v0.4.3
将当前对话导出为完美格式的 Word 文档,支持代码语法高亮、原生数学公式、Mermaid 图表、引用资料以及增强表格渲染。
概览
Export to Word 插件会把聊天消息从 Markdown 转成精致的 Word 文档。它完整支持标题、列表、表格、代码块和引用,同时兼顾中英文显示效果。
功能特性
- :material-file-word-box: 一键导出:在聊天界面添加"导出为 Word"动作按钮。
- :material-format-bold: Markdown 转换:将 Markdown 语法转换为 Word 格式(标题、粗体、斜体、代码、表格、列表)。
- :material-code-tags: 代码语法高亮:使用 Pygments 库为代码块添加语法高亮(支持 500+ 种语言)。
- :material-sigma: 原生数学公式:LaTeX 公式(
$$...$$、\[...\]、$...$、\(...\))转换为可编辑的 Word 公式。 - :material-graph: Mermaid 图表:Mermaid 流程图和时序图渲染为文档中的图片。
- :material-book-open-page-variant: 引用与参考:自动从 OpenWebUI 来源生成参考资料章节,支持可点击的引用链接。
- :material-brain-off: 移除思考过程:自动移除 AI 思考块(
<think>、<analysis>)。 - :material-table: 增强表格:智能列宽、列对齐(
:---、---:、:---:)、表头跨页重复。 - :material-format-quote-close: 引用块支持:Markdown 引用块渲染为带左侧边框的灰色斜体样式。
- :material-translate: 多语言支持:正确处理中文和英文文本,无乱码问题。
- :material-file-document-outline: 智能文件名:可配置标题来源(对话标题、AI 生成或 Markdown 标题)。
配置
您可以通过插件设置中的 Valves 按钮配置以下选项:
| Valve | 说明 | 默认值 |
|---|---|---|
文档标题来源 |
文档标题/文件名的来源。选项:chat_title (对话标题), ai_generated (AI 生成), markdown_title (Markdown 标题) |
chat_title |
最大嵌入图片大小MB |
嵌入图片的最大大小 (MB)。 | 20 |
界面语言 |
界面语言。选项:en (英语), zh (中文)。 |
zh |
英文字体 |
英文字体名称。 | Calibri |
中文字体 |
中文字体名称。 | SimSun |
代码字体 |
代码字体名称。 | Consolas |
表头背景色 |
表头背景色(十六进制,不带#)。 | F2F2F2 |
表格隔行背景色 |
表格隔行背景色(十六进制,不带#)。 | FBFBFB |
Mermaid_JS地址 |
Mermaid.js 库的 URL。 | https://cdn.jsdelivr.net/npm/mermaid@11.12.2/dist/mermaid.min.js |
JSZip库地址 |
JSZip 库的 URL(用于 DOCX 操作)。 | https://cdnjs.cloudflare.com/ajax/libs/jszip/3.10.1/jszip.min.js |
Mermaid_PNG缩放比例 |
Mermaid PNG 生成缩放比例(分辨率)。 | 3.0 |
Mermaid显示比例 |
Mermaid 在 Word 中的显示比例(视觉大小)。 | 1.0 |
Mermaid布局优化 |
优化 Mermaid 布局: 自动将 LR (左右) 转换为 TD (上下)。 | False |
Mermaid背景色 |
Mermaid 图表背景色(如 white, transparent)。 |
transparent |
启用Mermaid图注 |
启用/禁用 Mermaid 图表的图注。 | True |
Mermaid图注样式 |
Mermaid 图注的段落样式名称。 | Caption |
Mermaid图注前缀 |
图注前缀(如 '图')。留空则根据语言自动检测。 | "" |
启用数学公式 |
启用 LaTeX 数学公式块转换。 | True |
启用行内公式 |
启用行内 $ ... $ 数学公式转换。 |
True |
用户级配置 (UserValves)
用户可以在个人设置中覆盖以下配置:
文档标题来源界面语言英文字体,中文字体,代码字体表头背景色,表格隔行背景色Mermaid_...(部分 Mermaid 设置)启用数学公式,启用行内公式
安装
- 下载插件文件:
export_to_word.py - 上传到 OpenWebUI:Admin Panel → Settings → Functions
- 启用插件
使用方法
- 打开想要导出的对话
- 点击消息操作栏的 Export to Word 按钮
.docx文件会自动下载
支持的 Markdown 语法
| 语法 | Word 效果 |
|---|---|
# 标题1 到 ###### 标题6 |
标题级别 1-6 |
**粗体** / __粗体__ |
粗体文本 |
*斜体* / _斜体_ |
斜体文本 |
***粗斜体*** |
粗体 + 斜体 |
`行内代码` |
等宽字体 + 灰色背景 |
|
语法高亮代码块 |
> 引用文本 |
左侧边框的灰色斜体 |
[链接](url) |
蓝色下划线链接 |
~~删除线~~ |
删除线 |
- 项目 / * 项目 |
无序列表 |
1. 项目 |
有序列表 |
| Markdown 表格 | 增强表格(智能列宽) |
--- / *** |
水平分割线 |
$$LaTeX$$ 或 \[LaTeX\] |
原生 Word 公式(块级) |
$LaTeX$ 或 \(LaTeX\) |
原生 Word 公式(行内) |
```mermaid ... ``` |
Mermaid 图表(图片形式) |
[1] 引用标记 |
可点击链接到参考资料 |
运行要求
!!! note "前置条件"
- python-docx==1.1.2(文档生成)
- Pygments>=2.15.0(语法高亮)
- latex2mathml(LaTeX 转 MathML)
- mathml2omml(MathML 转 Office Math)
源码
[:fontawesAuthor: Fu-Jie | Version: 0.4.3 | Project: Awesome OpenWebUI/tree/main/plugins/actions/export_to_docx){ .md-button }