ONLYOFFICE 是根据 GNU AGPL v.3 许可证条款分发的开源协作办公套件。它包含三个用于文本文档、电子表格和演示文稿的编辑器,并具有以下功能:

查看,编辑和协同编辑 .docx、.xlsx、.pptx 文件。OOXML 作为一种核心格式,可确保与 Microsoft Word、Excel 和 PowerPoint 文件的高度兼容性。

通过内部转换为 OOXML,编辑其他流行格式(.odt、.rtf、.txt、.html、.ods、.csv、.odp)。

熟悉的选项卡式界面。

协作工具:两种协同编辑模式(快速和严谨),跟踪更改,评论和集成聊天。

灵活的访问权限管理:完全访问权限、只读、审阅、表单填写和评论。

使用 API 构建附加组件。

250 种可用语言和象形字母表。

通过 API,开发人员可以将 ONLYOFFICE 编辑器集成到网站和利用程序设计语言编写的应用程序中,并能配置和管理编辑器。

要集成 ONLYOFFICE 编辑器,我们需要一个集成应用程序来连接编辑器(ONLYOFFICE 文档服务器)和服务。 要在你的界面中使用编辑器,因该授予 ONLYOFFICE 以下权限:

添加并执行自定义代码。

用于下载和保存文件的匿名访问权限。这意味着编辑器仅与服务器端的服务通信,而不包括客户端的任何用户授权数据(浏览器 cookies)。

在用户界面添加新按钮(例如,“在 ONLYOFFICE 中打开”、“在 ONLYOFFICE 中编辑”)。

开启一个新页面,ONLYOFFICE 可以在其中执行脚本以添加编辑器。

能够指定文档服务器连接设置。

流行的协作解决方案的成功集成案例有很多,如 Nextcloud、ownCloud、Alfresco、Confluence 和 SharePoint,都是通过 ONLYOFFICE 提供的官方即用型连接器实现的。

实际的集成案例之一是 ONLYOFFICE 编辑器与以 C# 编写的开源协作平台的集成。该平台具有文档和项目管理、CRM、电子邮件聚合器、日历、用户数据库、博客、论坛、调查、Wiki 和即时通讯程序的功能。

将在线编辑器与 CRM 和项目模块集成,你可以:

文档关联到 CRM 时机和容器、项目任务和讨论,甚至创建一个单独的文件夹,其中包含与项目相关的文档、电子表格和演示文稿。

直接在 CRM 或项目模块中创建新的文档、工作表和演示文稿。

打开和编辑关联的文档,或者下载和删除。

将联系人从 CSV 文件批量导入到 CRM 中,并将客户数据库导出为 CSV 文件。

在“邮件”模块中,你可以关联存储在“文档模块”中的文件,或者将指向所需文档的链接插入到邮件正文中。 当 ONLYOFFICE 用户收到带有附件的文档的消息时,他们可以:下载附件、在浏览器中查看文件、打开文件进行编辑或将其保存到“文档模块”。 如上所述,如果格式不同于 OOXML ,则文件将自动转换为 .docx、.xlsx、.pptx,并且其副本也将以原始格式保存。

在本文中,你将看到 ONLYOFFICE 与最流行的编程语言之一的 Python 编写的文档管理系统的集成过程。 以下步骤将向你展示如何创建所有必要的部分,以使在 DMS(文档管理系统Document Management System)界面内的文档中可以进行协同工作成为可能:查看、编辑、协同编辑、保存文件和用户访问管理,并可以作为服务的示例集成到 Python 应用程序中。

1、前置需求

首先,创建集成过程的关键组件:ONLYOFFICE 文档服务器 和用 Python 编写的文件管理系统。

1.1、ONLYOFFICE 文档服务器

要安装 ONLYOFFICE 文档服务器,你可以从多个安装选项中进行选择:编译 GitHub 上可用的源代码,使用 .deb 或 .rpm 软件包亦或 Docker 镜像。

我们推荐使用下面这条命令利用 Docker 映像安装文档服务器和所有必需的依赖。请注意,选择此方法,你需要安装最新的 Docker 版本。

docker run-itd-p80:80onlyoffice/documentserver-de

1.2、利用 Python 开发 DMS

如果已经拥有一个,请检查它是否满足以下条件:

包含需要打开以查看/编辑的保留文件

允许下载文件

对于该应用程序,我们将使用 Bottle 框架。我们将使用以下命令将其安装在工作目录中:

pip install bottle

然后我们创建应用程序代码 main.py 和模板 index.tpl。

我们将以下代码添加到 main.py 文件中:

frombottleimportroute,run,template,get,static_file#connecting the frameworkandthe necessary components

@route('/')#setting up routingforrequestsfor/

defindex():

returntemplate('index.tpl')#showingtemplateinresponse to request

run(host="localhost",port=8080)#running the application on port8080

一旦我们运行该应用程序,点击 http://localhost:8080 就会在浏览器上呈现一个空白页面 。 为了使文档服务器能够创建新文档,添加默认文件并在模板中生成其名称列表,我们应该创建一个文件夹 files 并将3种类型文件(.docx、.xlsx 和 .pptx)放入其中。

要读取这些文件的名称,我们使用 listdir 组件(模块):

fromosimportlistdir

现在让我们为文件夹中的所有文件名创建一个变量:

sample_files=[fforfinlistdir('files')]

要在模板中使用此变量,我们需要通过 template 方法传递它:

defindex():

returntemplate('index.tpl',sample_files=sample_files)

这是模板中的这个变量:

%forfileinsample_files:

{{file}}

%end

我们重新启动应用程序以查看页面上的文件名列表。

使这些文件可用于所有应用程序用户的方法如下:

@get("/files/

python在线编辑器编译excel_如何利用ONLYOFFICE将在线文档编辑器集成到Python Web应用程序中?...相关推荐

  1. 编辑器未包含main类型_利用 ONLYOFFICE 将在线文档编辑器集成到 Python Web 应用程序中...

    通过 API,开发人员可以将 ONLYOFFICE 编辑器集成到网站和利用程序设计语言编写的应用程序中,并能配置和管理编辑器. 来源:https://linux.cn/article-13037-1. ...

  2. Python Swagger 接口文档自动集成平台

    一 安装 当前virtualenv 环境下 pip install django-rest-swagger==2.2.0 在Django项目settings.py中 加入 插件模块 DEBUG = T ...

  3. java计算机毕业设计web在线考试系统源码+mysql数据库+系统+lw文档+部署

    java计算机毕业设计web在线考试系统源码+mysql数据库+系统+lw文档+部署 java计算机毕业设计web在线考试系统源码+mysql数据库+系统+lw文档+部署 本源码技术栈: 项目架构:B ...

  4. 如何将在线文档编辑器集成至 Confluence管理平台

    通过阅读本文,了解如何为 Confluence 与 ONLYOFFICE 创建集成插件以在 Confluence 中添加 DOCX.XLSX 与 PPTX 编辑功能. 在线文档编辑功能可作为数字化协同 ...

  5. 自己用js做的在线word文档编辑器oarword-doc/docx文档编辑、导出导出

    分享自己用js做的在线word文档编辑器oarword 支持基本doc/docx文档编辑,导出和导出,类似google docs和zoho 源码分享在Github:https://github.com ...

  6. 在线OFFICE文档编辑器

    WebOffice 在线OFFICE文档编辑器 多文档 多种文档格式支持:Word.Excel.WPS.PDF.CEB.各种图片格式 ... 安全控制 禁止复制.打印.保存. 修订留痕 标记您对文档的 ...

  7. word转图片 java_Java 利用LibreOffice将Office文档转换成 PDF,进而转图片,实现在线预览功能...

    项目中需要将 Office 文档上传并实现在线预览,用到了 LibreOffice 将 Office 文档转换为 PDF 文档,然后再用 pdfbox 将 PDF 转为图片. 本文介绍借助 Libre ...

  8. 布置到linux的文件,免费的Office套件,如何在Linux中部署OnlyOffice桌面文档编辑器...

    原标题:免费的Office套件,如何在Linux中部署OnlyOffice桌面文档编辑器 如果您是Ubuntu用户(或者一般的Linux用户),那么您很可能将LibreOffice作为默认的offic ...

  9. 利用OpenOffice实现word文档在线预览

    项目中遇到的word文档在线预览需求,查阅很多资料决定利用openoffice转换word文档为pdf/html进行预览实现. 1.下载openoffice4安装 www.openoffice.org ...

  10. SpringBoot集成onlyoffice实现word文档编辑保存 [ 转载 ]

    原文地址 说明 onlyoffice为一款开源的office在线编辑组件,提供word/excel/ppt编辑保存操作 以下操作均基于centos8系统,officeonly镜像版本7.1.2.23( ...

最新文章

  1. android读取本地yaml文件_python笔记11-读取yaml配置文件(pyyaml)
  2. 内核隐藏进程(源码)
  3. 双用户windows linux系统,Windows与Linux合二为一?终于能在windows上运行Linux了!
  4. linux系统开启多路径,Linux系统怎么配置多路径
  5. java 获取bean 属性_获取javaBean的属性名属性值属性类型
  6. OPENGL和DX的不同.
  7. SGX攻防部分POC
  8. canvas制作圆角矩形(包括填充矩形的功能)
  9. 【C语言编程5】复数计算器
  10. 二逼青年暑假深圳面试记
  11. 灵魂画师全都出来了,都怪昨天那个AI画猫的应用……
  12. 哈佛架构、冯诺依曼架构、指令集
  13. stick棍子by Ye
  14. JAVA版本号的问题 Java版本号与JDK版本
  15. 使用aireplay-ng抓握手包笔记
  16. Rosalind Java|Open Reading Frames
  17. 4|无线传感器网络与应用|无线传感器网络原理及方法-许毅版|考试知识点
  18. 北京注册公司还是注册个体户有区别
  19. C++用vector容器实现输入任意长度数组
  20. Android常用颜色大全

热门文章

  1. angular2 + XLSX 导出一张工作簿中包含多张表格
  2. redis实现分布式锁的几种方式
  3. python3实现图片虚化显示轮廓
  4. Tortoise ORM 简单使用
  5. chrome主页和新标签页被金山毒霸劫持 处理方法
  6. Codepen 每日精选(2018-3-26)
  7. java 特殊字符分割_java字符串分割处理split及特殊符号
  8. 前端性能优化之gzip 1
  9. 学计算机应该买多大尺寸笔记本电脑,笔记本电脑买几寸的比较合适?
  10. RAW格式转存PNG图片