文章目录
- Dsoframer (32位亲测可用)
- [LibreOfficeKit\ LibreOffice UNO](#LibreOfficeKit\ LibreOffice UNO)
- [TX Text Control](#TX Text Control)
-
- [Microsoft Word的OLE/COM嵌入](#Microsoft Word的OLE/COM嵌入)
- 基于Web方案
-
- Quill(亲测可用)
- WebOffice控件
- ONLYOFFICE
- [Collabora Online](#Collabora Online)
- TinyMCE
- [CKEditor 5](#CKEditor 5)
- WebOffice控件
- GroupDocs.Editor
- UEditor
- WangEditor
- Slate.js
- Tiptap
- [Froala Editor](#Froala Editor)
- Summernote
- 腾讯文档开放平台
- 飞书文档开放平台
- [金山文档 API](#金山文档 API)
- 石墨文档API
- 其它技术
- [Aspose.Words for C++](#Aspose.Words for C++)
- open-editor
- Rtdui
- WYSIWYG富文本编辑器
- [本地word-like Office](#本地word-like Office)
- Qt集成方案
-
- [方案一:Qt WebEngine](#方案一:Qt WebEngine)
- [方案二:CEF(Chromium Embedded Framework)](#方案二:CEF(Chromium Embedded Framework))
Dsoframer (32位亲测可用)
开源免费,但是早已停止更新,而且不支持x64应用程序,虽然能注册成功,但是调用提示"未注册的类"。
LibreOfficeKit\ LibreOffice UNO
开源办公套件 LibreOffice的核心组件之一。
跨平台情况
可用于 Windows、Linux、macOS。
Windows下需要下载安装完整LibreOffice客户端。
收费情况
免费、开源。遵循MPL开源协议,源代码和编译库均可免费获取,无需支付任何授权费用。
下载安装
- 下载安装LibreOffice程序。
- 下载LibreOffice SDK。安装到LibreOffice同一目录。

https://www.libreoffice.org/download/download-libreoffice/
https://downloadarchive.documentfoundation.org/libreoffice/old/25.8.3.2/win/x86_64/
- 在SDK安装后的目录中双击运行
setsdkenv_windows.bat,设置环境变量。
shell
**********************************************************************
** Visual Studio 2022 Developer Command Prompt v17.12.3
** Copyright (c) 2022 Microsoft Corporation
**********************************************************************
[vcvarsall.bat] Environment initialized for: 'x86'
******************************************************************
*
* SDK environment is prepared for Windows
*
* SDK = E:\Program Files\LibreOffice\sdk
* Office = E:\Program Files\LibreOffice
* Make = E:\MinGW\bin
* Zip = E:\Program Files\UnxUtils\usr\local\wbin
* cat = E:\Program Files\UnxUtils\usr\local\wbin
* sed = E:\Program Files\UnxUtils\usr\local\wbin
* C++ Compiler = E:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.42.34433\bin\Hostx64\x64
* C# and VB.NET compilers = C:\Windows\Microsoft.NET\Framework64\v2.0.50727
* Dotnet =
* Java =
* Special Output directory = E:\libreoffice25.8_sdk
* Auto deployment = YES
*
******************************************************************
- cppumaker生成SDK include包含文件。
shell
"E:/Program Files/LibreOffice/sdk/bin/cppumaker.exe" -Gc -O "E:/Program Files/LibreOffice/sdk/include" "E:/Program Files/LibreOffice/program/types.rdb" "E:/Program Files/LibreOffice/program/types/offapi.rdb"
集成方案
方案1
用 QProcess 启动独立 LibreOffice 窗口并 setParent/winId "嵌入"在 Qt 窗口中(亲测可用)。
未解决问题:
多个word文档打开切换时,程序由于无法关闭上一文档导致卡死。
方案2:自绘UI
- 按官方说明编译或下载带 LibreOfficeKit 的 LibreOffice;引入头文件
LibreOfficeKit.hxx等。 - 在 Qt 项目中通过
lok::Office::create()初始化,再用lok::Office::documentLoad()打开.docx。 - 使用
lok::Document::paintTile()把页面渲染到QImage或 OpenGL 纹理里,显示在控件中。 - 将鼠标/键盘事件转换为
lok::Document::postMouseEvent()/postKeyEvent(),以实现编辑。 - 监听回调
LibreOfficeKitCallback,处理文档变更、光标移动等。
方案三:LibreOffice ActiveX已废弃。
参考资料
libreofficekit
libreofficekit github
libreoffice开发文档
TX Text Control
介绍:
功能强大的文字处理控件,提供丰富的文档编辑功能,支持多种文档格式。
跨平台情况:
主要支持Windows平台,有.NET和ActiveX版本。
开发方案:
商业软件,需要购买许可证。
集成步骤:
1)购买并获取 TX Text Control SDK。
2)在 Windows上使用 QAxWidget嵌入ActiveX控件。
3)通过COM接口与控件交互。
参考资料:
TX Text Control Documentation
文字处理控件TX Text Control的使用
Microsoft Word的OLE/COM嵌入
简单介绍:
通过OLE技术将 Microsoft Word嵌入到应用程序中,提供完整的Word编辑体验。
跨平台情况:
仅限 Windows平台。且本地需安装 Microsoft Office应用程序。
收费情况:
需要安装 Microsoft Office,并拥有相应许可证。
集成步骤:
1)使用QAxWidget创建Word应用程序对象。
2)通过COM接口打开和编辑文档。
3)处理OLE容器的事件和布局。
基于Web方案
Quill(亲测可用)
轻量级富文本编辑器,API简洁。
跨平台情况
纯前端,跨平台。
收费情况
完全免费,BSD 3-Clause协议。
下载安装
- 安装node
- 安装quill
shell
npm install quill
- 安装表格插件:
原生不支持表格,需安装插件后方可使用。
PS:可能不支持复杂的Office文档格式(.docx,.xlsx等)的完整保真度编辑。
参考资料
WebOffice控件
简单介绍:
基于Web的Office文档编辑控件,可在浏览器中实现Word、Excel等文档的编辑。
跨平台情况:
操作系统:
支持 Windows XP, Windows 2003, Windows Vista, Windows7, Windows8.1,Windows10及以上版本。其中包括32位的和64位的操作系统,支持最新的Win10操作系统32位和64位系统。
Office版本:
客户端电脑有Office、Wps或永中Office之一。支持Office2003、Office2007、Office2010、Office2013、Office2016、Office2019等(非Home版、非Student版、非精简版或绿色版)。支持Wps;支持永中Office。支持Office的32位和64位。
收费情况:
商业软件,需要购买授权。
不绑定项目、不绑定服务器、不限用户数以及不重复收费,WebOffice在服务端不运行特定程序和DLL,所以购买一套WebOffice控件授权可同时支持。
集成步骤:
1)在Qt中使用QWebEngineView嵌入浏览器。
2)加载WebOffice的HTML页面。
3)通过JavaScript与WebOffice交互。
PS:C++版无示例代码,有C#的示例代码,基于JS实现。
参考资料:
官方网站
WebOffice控件版本功能比较
ONLYOFFICE
简单介绍:
开源的在线文档编辑器,支持DOCX、ODT等格式,提供协作编辑功能。
跨平台情况:
支持Windows和Linux服务器部署。
收费情况:
开源版免费,商业版需要授权。
集成步骤:
1)部署ONLYOFFICE Document Server。
2)在Qt中使用QWebEngineView嵌入编辑器。
3)通过JavaScript API与Web编辑器交互。
4)涉及前端SDK、后端SDK、文档服务器三层架构。需要自建文档服务器。
参考资料:
官网
ONLYOFFICE开发者文档
Collabora Online
简单介绍:
基于LibreOffice的在线办公套件,提供文档编辑和协作功能。
跨平台情况:
支持Windows和Linux。
收费情况:
开源(AGPL协议),商业支持需付费。
集成步骤:
1)部署Collabora Online服务。
2)在Qt中使用QWebEngineView嵌入。
3)通过WOPI接口或REST API进行集成。
4)客户端-服务器架构:需要在 Linux专用服务器或 VM上安装 Collabora Online服务或使用docker。
参考资料:
官网
TinyMCE
简单介绍:
功能丰富的富文本编辑器,插件生态完善。可导出为DOCX。
跨平台情况:
纯前端,跨平台。
收费情况:
最少79美元/月 TinyMCE 2025定价
集成步骤:
1)在Qt中使用QWebEngineView嵌入。
2)加载TinyMCE编辑器。
3)通过JavaScript API与编辑器交互。
参考资料:
官网
CKEditor 5
简单介绍:
模块化富文本编辑器,模块化,可定制性强。
跨平台情况:
纯前端,跨平台。
收费情况:
144美元/月 CKEditor&add-ons pricing-Choose a plan or craft your own flexible offer
集成步骤:
1)在Qt中使用QWebEngineView嵌入。
2)加载CKEditor编辑器。
3)通过JavaScript API与编辑器交互。
参考资料:
官网
WebOffice控件
特点:国内产品,中文支持较好
功能:支持Word、Excel、PPT;图片、表格;与数据库集成
平台:Windows/Linux
集成:提供JavaScript API
许可证:商业授权
官网:https://www.officectrl.com
GroupDocs.Editor
特点:多格式支持(DOCX、ODT、RTF、HTML等)
功能:编辑、转换、导出;图片、表格
平台:.NET、Java、Node.js(Windows/Linux)
集成:提供多种语言SDK
许可证:商业授权
官网:https://products.groupdocs.com/editor
UEditor
独立/一体化
百度出品,功能丰富,开箱即用,中文文档友好
支持
支持
内置支持
WangEditor
独立/轻量级
国产,TypeScript开发,轻量简洁,开源免费
支持
支持
需自定义开发
Slate.js
框架(React)
非成品,是可深度定制的框架,用于构建复杂编辑器
可定制
可定制
可定制
Tiptap
框架(Vue/React)
基于Prosemirror,无渲染架构, Vue/React集成佳
可定制
可定制
可定制
Froala Editor
功能:富文本编辑器,界面简洁,支持图片、表格
集成方式:JavaScript SDK,可通过 Qt WebEngine嵌入
跨平台:支持 Windows、Linux
收费情况:
商业许可:约$199/域名/年
多域名许可:约499-999/年
企业版:需联系销售
Summernote
功能:轻量级富文本编辑器,支持图片、表格
集成方式:JavaScript SDK,可通过 Qt WebEngine嵌入
跨平台:支持 Windows、Linux
收费情况:
完全免费(MIT),可用于商业项目
腾讯文档开放平台
功能:在线文档编辑,支持图片、表格、协作
集成方式:提供API和SDK
跨平台:支持 Windows、Linux
收费情况:
基础版:免费(有限制)
企业版:需联系销售,按用户数或调用量计费
飞书文档开放平台
功能:在线文档编辑,支持图片、表格、协作
集成方式:提供API和SDK
跨平台:支持 Windows、Linux
收费情况:
基础版:免费(有限制)
企业版:需联系销售,按用户数或调用量计费
金山文档 API
功能:在线文档编辑,支持图片、表格
集成方式:提供API和SDK
跨平台:支持 Windows、Linux
收费情况:
需联系销售获取报价
石墨文档API
功能:在线文档编辑,支持图片、表格、协作
集成方式:提供API和SDK
跨平台:支持 Windows、Linux
收费情况:
基础版:免费(有限制)
企业版:需联系销售
其它技术
Fastreport
HTML
三、附录
1、文本编辑器:
1.1 wxMEdit
wxMEdit-跨平台文本与十六进制编辑器-开源软件
跨平台的文本/十六进制编辑器。
1.2 QScintilla
2、其它语言富文本编辑器:
2.1 TRichEdit
官方网站: Resources for TRichView: Additional Delphi Components, Actions,Spell-Checkers, Reporting Tools\](官方网站: Resources for TRichView: Additional Delphi Components, Actions,Spell-Checkers, Reporting Tools)
用 Delphi编写,不需要外部 DLL或 ActiveX文件。
3、无交互界面
3.1 KD Reports
基于Qt的报表生成库,支持创建复杂的、数据驱动的报表,适用于商业应用、数据可视化等场景。它提供灵活的布局设计、表格生成、图表嵌入等功能,并支持导出为PDF、HTML等格式。
\[KD Reports\| KDAB\](KD Reports\| KDAB)
可显示渲染,但不可编辑。
收费情况:开源。
4.5 DuckX
4.6 Docx
[lpxxn/docx:qt office word lib](https://github.com/lpxxn/docx)
QAxWidget/QAxObject(Windows平台)
QtWebEngine+Web Office解决方案
### Aspose.Words for C++
定价:$5037/永久 [定价信息 \| Aspose.Words Product Family](https://purchase.aspose.com/pricing/zh/words/family/)
### open-editor