当前位置: 首页 > news >正文

ONLYOFFICE 文档开发者版 8.1:API 更新

随着版本 8.1 新功能的发布,我们更新了编辑器、文档生成器和插件的 API,并添加了 Office API 板块。阅读下文了解详情。

ONLYOFFICE 文档开发者版 8.1:API 更新

ONLYOFFICE 文档是什么

ONLYOFFICE 文档是一个功能强大的文档编辑器,支持处理文本文档、电子表格、演示文稿、可填写表单、PDF 和电子书,可多人在线协作,支持 AI 集成。它具有丰富的插件库,并且支持自行开发上传插件。

ONLYOFFICE 文档开发者版可以无缝地适应您的网络应用,支持多种流行的编程语言和开发框架,包括JavaScript、Python、Java、C# 等。为前端框架也提供现成的组件样本 (Angular, React, Vue 等)。

观看视频icon-default.png?t=N7T8https://www.bilibili.com/video/BV1Aw411p7rg/

PDF 表单

从 8.1 版本开始,我们完全切换到 PDF 表单。若要创建和编辑表单,用户不再需要其他格式,以前用于创建表单模板的 docxf 格式现在已被弃用。

API 做出了以下更新:

  • docxf 和 oform 格式的 documentType 更改为 pdf
  • 将 pdf field 添加到转换请求中
  • 将 formsubmit 操作添加到 WOPI 发现中
  • 将 docs_api_config 参数添加到 WOPI 宿主页的 form 元素中

表单提交

成功提交表单后,将调用新添加的 onSubmit 事件,让用户的表单提交操作更加直观。

在下面的代码示例中,成功提交表单后,将向控制台打印一条消息。例如,您可以向用户显示提示“您的表单已成功提交”之类的内容。

var onSubmit = function (event) {console.log("The form was submitted.");
};
var docEditor = new DocsAPI.DocEditor("placeholder", {"events": {"onSubmit": onSubmit,...},...
});

收件人角色管理

默认情况下,会启用管理角色功能,让您可以按需灵活地分配角色和颜色。如果收件人角色和其匹配的颜色对您来说不是必需的,那么可以禁用此功能。

为此,请使用添加到 editorConfig.customization.features 参数的 roles 字段。它定义是否将在 PDF 表单中禁用角色设置。如果该参数设置为 false,则角色管理器将处于隐藏状态,并禁用通过角色来查看表单。在这种情况下,将不会显示“表单”选项卡上的“管理角色”和“查看表单”按钮,以及右侧面板中设置字段角色的下拉列表。

扩展自动化 API

自动化 API 可以与外部文件进行交互,增加了几种新方法:

  • addContextMenuItem – 将项目添加到上下文菜单中
  • addToolbarMenuItem – 将项目添加到工具栏菜单
  • updateContextMenuItem – 使用指定的项目,更新上下文菜单中的项目

例如,如果要更新上下文菜单项,请使用 updateContextMenuItem 方法。在这里,传递一个包含新项的数组作为参数,为每个项指定所有必要的参数。在下面的代码示例中,我们将传递一个具有“onConvert”ID 和“Convert to Markdown or HTML”文本的元素。

var items: [{"id": "onConvert","text": getMessage("Convert to Markdown or HTML")}
]
connector.updateContextMenuItem(items);

请注意:ONLYOFFICE 文档开发版的30天试用期含有自动化 API,因此您可以免费试用。如果您准备将 Automation API 用于生产,则需获取含有此选项的许可证。

自定义

使用新添加的参数来调整编辑器的界面。

editorConfig.customization.layout.header.editMode 参数,定义切换模式按钮是否显示在标题中。

请注意:此 API 参数适用于具有扩展文档开发人员许可证的用户。要访问此功能,请提交您的请求。

ONLYOFFICE 文档开发者版 8.1:API 更新

editorConfig.customization.logo 参数的 visible 字段,能够显示或隐藏 logo(编辑器标题左上角的图像文件)。此外,它现在也可用于移动编辑器。

ONLYOFFICE 文档开发者版 8.1:API 更新

可靠集群的分片

之前版本中引入的 WOPISrc 查询参数,从浏览器到服务器,均已被添加至请求中。这样您可以创建 ONLYOFFICE 的多个独立实例。使用 WOPISrc 对请求进行负载均衡可确保协作编辑正常工作:编辑同一文档的所有用户都由同一服务器提供服务。针对 WOPI,使用了由积分器发送的参数。针对 Docs API,使用了新的 Shard key 参数。

https://www.onlyoffice.com/zh/ 参数被添加到 URL QueryString 时,将发送请求至文档命令服务文档转换服务文档生成器服务key 字段会被用作一个值。例如,?shardkey=Khirz6zTPdfd7。如果正文中没有键,您也不需要发送(例如,在 getForgottenList 命令中)。

编辑器的更多 API 更新

  • 系统会将 -10 错误代码(超出大小限制)添加到 Conversion API 中。
  • editorConfig.customization.hideRightMenu 参数的默认值更改为 true(即右侧菜单将在首次加载时隐藏)。
  • editorConfig.customization.layout.toolbar.home.mailmerge 字段已弃用,请改用 editorConfig.customization.layout.toolbar.collaboration.mailmerge 字段(因为“邮件合并”按钮已移至“协作”选项卡)。
  • editorConfig.customization.goback.requestClose 字段已弃用,请改用 editorConfig.customization.close 字段。

获取最新的ONLYOFFICE 文档开发者版:

立即下载

插件的 API 优化

从 8.1 版本开始,插件可以更改工具栏:创建自己的选项卡并填充它们、将按钮添加到标准选项卡。为此,请使用 AddToolbarMenuItem 方法。

ONLYOFFICE 文档开发者版 8.1:API 更新

var oToolbarMenuItem = {"id": "MeaningItem","type": "button","text": "Meaning","hint": "Meaning","icons": "resources/light/icon.png","disabled": false,"enableToggle": false,"lockInViewMode": false,"separator": true,"split": true,"items": [{"id": "onMeaningT","text": "Explain text in comment"},{"id": "onFixSpelling","text": "Fix spelling & grammar"},{"id": "onMakeLonger","text": "Make longer"},{"id": "onMakeShorter","text": "Make shorter"}]
};
var oToolbarMenuTab = {"id": "ChatGPT","text": "AI Assistant","items": [oToolbarMenuItem]
};
var oToolbarMenuMainItem = {"guid": "asc.{9DC93CDB-B576-4F0C-B55E-FCC9C48DD007}","tabs": [oToolbarMenuTab]
};
window.Asc.plugin.executeMethod ("AddToolbarMenuItem", [[oToolbarMenuMainItem]]);

此外,插件现在不仅可以创建多个窗口,还可以创建多个左侧面板。variations.menu 参数指定插件的放置位置:在右侧或左侧面板上。

ONLYOFFICE 文档开发者版 8.1:API 更新

在新的插件方法中,您会发现:

  • onToolbarMenuClick
  • ActivateWindow
  • GetSelectedOleObjects
  • GetAllComments
  • 等等

查看插件 API 更新的完整列表。

档生成器的 Python 框架

对于 ONLYOFFICE 文档生成器,现在有一个 Python 生成器框架可用。它包含一系列库、类和函数,可以更轻松地在 Python 中快速开发具有文档创建功能的应用程序。

Office API

为了方便和更轻松的导航,我们将编辑器的 JavaScript 库移至一个单独的板块 – Office JavaScript API。

在这里,我们还为 8.1 版本添加了许多新方法,包括:

  • 日期格式
  • 设置文本属性
  • 受保护的范围
  • 粘贴/剪切范围
  • 参考样式
  • 工作表功能
  • 自定义功能
  • 移动光标

查看新方法的完整列表。

相关链接

ONLYOFFICE 文档 8.1的新功能:文章 / 视频

ONLYOFFICE 开发者版

ONLYOFFICE 文档生成器

API 文档

文档 API 更新日志

Office API 更新日志

观看视频icon-default.png?t=N7T8https://www.bilibili.com/video/BV1Aw411p7rg/

相关文章:

ONLYOFFICE 文档开发者版 8.1:API 更新

随着版本 8.1 新功能的发布,我们更新了编辑器、文档生成器和插件的 API,并添加了 Office API 板块。阅读下文了解详情。 ​ ONLYOFFICE 文档是什么 ONLYOFFICE 文档是一个功能强大的文档编辑器,支持处理文本文档、电子表格、演示文稿、可填写…...

Activemq单节点在Windows下的配置部署

1.环境信息 服务器信息jdk版本activemq版本备注Windows Server 2008R2 Enterprisejdk-17_windows-x64_bin.exeapache-activemq-5.18.42.jdk配置 1.下载jdk 地址: Java Downloads | Oracle 中国 2.上传至Windows服务器,点击安装,在选择安装目录页面,选择合适的安装目录即…...

SpringBoot-注解@ImportResource引入自定义spring的配置xml文件和配置类

1、注解ImportResource 我们知道Spring的配置文件是可以有很多个的,我们在web.xml中如下配置就可以引入它们: SprongBoot默认已经给我们配置好了Spring,它的内部相当于已经有一个配置文件,那么我们想要添加新的配置文件怎么办&am…...

GitLab配置免密登录之后仍然需要Git登录的解决办法

GitLab配置免密登录之后仍然需要Git登录的解决办法 因为实习工作需要,要在本地拉取gitlab上的代码,设置了密钥之后连接的时候还需要登录的token,摸索之后有了下面的解决办法。 方法一: 根据报错的提示,去网站上设置个人…...

探索小众爱好:打造个人韧性与特色之路

在这个信息爆炸的时代,我们很容易陷入“千篇一律”的漩涡中,无论是生活方式还是兴趣爱好,似乎都趋向于某种“流行”或“热门”。然而,真正的个性与魅力,往往来源于那些不为大众所知的小众爱好。今天,我想和…...

GitHub使用教程(小白版)

看一百篇文章不如自己写一篇 第一步:注册和安装 注册GitHub账号 访问 GitHub官网。点击右上角的 "Sign up" 按钮。按照提示输入你的邮箱、创建用户名和密码,完成注册。 安装Git 访问 Git官网。下载并安装适用于你操作系统的Git。安装…...

深度解析SD-WAN在企业组网中的应用场景

在现代企业快速发展的网络环境中,SD-WAN技术不仅是实现企业各站点间高效连接的关键,也是满足不同站点对互联网、SaaS云应用和公有云等多种业务需求的理想选择。本文将从企业的WAN业务需求出发,对SD-WAN的组网场景进行全面解析,涵盖…...

【INTEL(ALTERA)】Eclipse Nios II SBT 无法从模板创建新应用程序和 BSP

目录 说明 解决方法 说明 您应该能够创建新的应用程序和 BSP 模板包含以下步骤: 选择 Nios II应用程序和 BSP 来自模板。选择您的.sopcinfo 文件并选择模板。从您的工作区单击 选择现有的 BSP 项目。单击 创建。选择所需的 BSP 选项。单击 完成。 但是&#xf…...

Vue_cli搭建过程项目创建

概述 vue-cli 官方提供的一个脚手架,用于快速生成一个 vue 的项目模板;预先定义 好的目录结构及基础代码,就好比咱们在创建 Maven 项目时可以选择创建一个 骨架项目,这个骨架项目就是脚手架,我们的开发更加的快速&am…...

面试题4:POST 比 GET 安全?

不是。HTTP就没有加密功能。 我们知道 GET一般将参数放到URL的查询字符串中,如果是实现登录页面,我们的用户名和密码就直接显示到浏览器的地址栏中了,此时就会轻易的被他人获取账号密码,很不安全。而POST会把参数放到 body 里&am…...

Github生成Personal access tokens及在git中使用

目录 生成Token 使用Token-手工修改 使用Token-自动 生成Token 登录GitHub,在GitHub右上角点击个人资料头像,点击Settings → Developer Settings → Personal access tokens (classic)。 在界面上选择点击【Generate new token】,填写如…...

【BUG记录】条件查询没有查询结果 || MybatisPlus打印查询语句

结论 先说结论,查询没有结果,可能是数据库连接,数据问题之类,最有可能的根本原因是查询语句问题,需要想办法检查查询语句,使用mybatisPlus等自动生成查询语句的框架不能直接看语句,可以依靠日志…...

【C#】找不到属性集方法。get只读属性用了反射设置setValue肯定报错

欢迎来到《小5讲堂》 这是《C#》系列文章,每篇文章将以博主理解的角度展开讲解。 温馨提示:博主能力有限,理解水平有限,若有不对之处望指正! 背景 找不到属性集方法。get只读属性用了反射设置setValue肯定报错 报错…...

探索ChatGPT在程序员日常工作的多种应用

引言 在现代科技迅猛发展的今天,人工智能的应用已经深入到我们生活和工作的各个方面。作为程序员,我们时常面临大量繁杂的任务,从代码编写、错误调试到项目管理和团队协作,每一项都需要花费大量的时间和精力。近年来,…...

算法与数据结构——时间复杂度详解与示例(C#,C++)

文章目录 1. 算法与数据结构概述2. 时间复杂度基本概念3. 时间复杂度分析方法4. 不同数据结构的时间复杂度示例5. 如何通过算法优化来提高时间复杂度6. C#中的时间复杂度示例7. 总结 算法与数据结构是计算机科学的核心,它们共同决定了程序的性能和效率。在实际开发中…...

面试题3:GET 和 POST 有什么区别?

[!]高频面试题。 GET 和 POST 没有本质区别,可以进行相互代替。 1、GET语义:“从服务器获取数据”;POST语义:“往服务器上提交数据”。[设计初衷,不一定要遵守] 2、发请求时,给服务器传递的数据&#xff…...

探索QCS6490目标检测AI应用开发(三):模型推理

作为《探索QCS6490目标检测AI应用开发》文章,紧接上一期,我们介绍如何在应用程序中介绍如何使用解码后的视频帧结合Yolov8n模型推理。 高通 Qualcomm AI Engine Direct 是一套能够针对高通AI应用加速的软件SDK,更多的内容可以访问&#xff1a…...

C# 静态类中构造、字段和属性等的执行顺序,含有单例模式分析

C# 静态类时我们实战项目开发中用的非常多的。有些时候可能他的执行顺序并非如我们认为的那样,那就快速来看一下吧! 在C#中,静态类的构造函数是在第一次访问该类的任何成员时执行的。静态构造函数是不可继承的,并且在访问静态类的…...

c++设计模式之一创建型模式

1、创建型模式(常见的设计模式) Factory 模式(工厂模式,被实例化的子类) 在面向对象系统设计中经常可以遇到以下的两类问题: 下面是第一类问题和代码示例:我们经常会抽象出一些类的公共接口以…...

上古世纪台服注册账号+下载客户端全方位图文教程

又一款新的MMRPG游戏即将上线啦,游戏名称叫做《上古世纪》游戏采用传统MMO类型游戏的玩法,但是开发商采用了先进的游戏引擎,让玩家们可以享受到极致的视觉体验。同时游戏的背景是建立在大陆分崩离析的基础上。各个部落因为领地的原因纷纷开战…...

浏览器访问 AWS ECS 上部署的 Docker 容器(监听 80 端口)

✅ 一、ECS 服务配置 Dockerfile 确保监听 80 端口 EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]或 EXPOSE 80 CMD ["python3", "-m", "http.server", "80"]任务定义(Task Definition&…...

云计算——弹性云计算器(ECS)

弹性云服务器:ECS 概述 云计算重构了ICT系统,云计算平台厂商推出使得厂家能够主要关注应用管理而非平台管理的云平台,包含如下主要概念。 ECS(Elastic Cloud Server):即弹性云服务器,是云计算…...

iPhone密码忘记了办?iPhoneUnlocker,iPhone解锁工具Aiseesoft iPhone Unlocker 高级注册版​分享

平时用 iPhone 的时候,难免会碰到解锁的麻烦事。比如密码忘了、人脸识别 / 指纹识别突然不灵,或者买了二手 iPhone 却被原来的 iCloud 账号锁住,这时候就需要靠谱的解锁工具来帮忙了。Aiseesoft iPhone Unlocker 就是专门解决这些问题的软件&…...

DIY|Mac 搭建 ESP-IDF 开发环境及编译小智 AI

前一阵子在百度 AI 开发者大会上,看到基于小智 AI DIY 玩具的演示,感觉有点意思,想着自己也来试试。 如果只是想烧录现成的固件,乐鑫官方除了提供了 Windows 版本的 Flash 下载工具 之外,还提供了基于网页版的 ESP LA…...

uniapp中使用aixos 报错

问题: 在uniapp中使用aixos,运行后报如下错误: AxiosError: There is no suitable adapter to dispatch the request since : - adapter xhr is not supported by the environment - adapter http is not available in the build 解决方案&…...

多模态大语言模型arxiv论文略读(108)

CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文标题:CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文作者:Sayna Ebrahimi, Sercan O. Arik, Tejas Nama, Tomas Pfister ➡️ 研究机构: Google Cloud AI Re…...

[Java恶补day16] 238.除自身以外数组的乘积

给你一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法,且在 O(n) 时间复杂度…...

Java数值运算常见陷阱与规避方法

整数除法中的舍入问题 问题现象 当开发者预期进行浮点除法却误用整数除法时,会出现小数部分被截断的情况。典型错误模式如下: void process(int value) {double half = value / 2; // 整数除法导致截断// 使用half变量 }此时...

华为OD机试-最短木板长度-二分法(A卷,100分)

此题是一个最大化最小值的典型例题, 因为搜索范围是有界的,上界最大木板长度补充的全部木料长度,下界最小木板长度; 即left0,right10^6; 我们可以设置一个候选值x(mid),将木板的长度全部都补充到x,如果成功…...

系统掌握PyTorch:图解张量、Autograd、DataLoader、nn.Module与实战模型

本文较长,建议点赞收藏,以免遗失。更多AI大模型应用开发学习视频及资料,尽在聚客AI学院。 本文通过代码驱动的方式,系统讲解PyTorch核心概念和实战技巧,涵盖张量操作、自动微分、数据加载、模型构建和训练全流程&#…...