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/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/861147.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Profibus DP主站转Modbus模块连接马达保护器案例

一、概述 在工业自动化控制系统中,Profibus DP和Modbus是常见的通信协议,在同一现场还有可能遇到Modbus协议,ModbusTCP协议,Profinet协议,Profibus协议,Profibus DP协议,EtherCAT协议&#xff…

小程序中如何进行拼车

小程序因其便捷、快速的特点,已逐渐成为人们日常生活中不可或缺的一部分。在出行领域,拼车作为一种经济、环保的出行方式,受到了越来越多人的青睐。那么该如何在小程序中帮助用户高效发布拼车信息呢?下面具体介绍拼车流程。 一、…

仿Photoshop利用曲线对图像调整亮度与色彩

曲线调整是Photoshop的最常用的重要功能之一。对于一个RGB图像, 可以对R, G, B 通道进行独立的曲线调整,即,对三个通道分别使用三条曲线(Curve)。还可以再增加一条曲线对 三个通道进行整体调整。 因此,对一个图像&a…

深入浅出 langchain 1. Prompt 与 Model

示例 从代码入手来看原理 from langchain_core.output_parsers import StrOutputParser from langchain_core.prompts import ChatPromptTemplate from langchain_openai import ChatOpenAI prompt ChatPromptTemplate.from_template("tell me a short joke about…

让python的报错代码只显示第一层

在 Python 中,sys.tracebacklimit 是 sys 模块中的一个属性,它用于控制在错误发生时,Python 解释器显示的堆栈追踪(traceback)的深度。 具体来说: • 默认行为:当出现未处理的异常时&#xff…

Java整合Jsch实现SFTP连接对服务器文件增删改查操作

我们在开发中,有时候需要操作服务器上的文件,Spring Boot可以使用JSch库来连接SFTP并进行操作服务器上的文件读写。 创建一个SFTP连接需要以下步骤: 1.创建JSch对象2.使用JSch对象创建Session对象3.使用Session对象连接到SFTP服务器4.打开S…

【神经网络】深入理解多层神经网络(深度神经网络

🎈个人主页:豌豆射手^ 🎉欢迎 👍点赞✍评论⭐收藏 🤝希望本文对您有所裨益,如有不足之处,欢迎在评论区提出指正,让我们共同学习、交流进步! 深入理解多层神经网络&#x…

vivado BLACK_BOX、BLI

BLACK_BOX BLACK_BOX属性是一个有用的调试属性,可以将 层次结构关闭并启用合成以为该模块或实体创建一个黑盒。当 属性,即使存在模块或实体的有效逻辑,Vivado合成也会创建 该级别的黑框。此属性可以放置在模块、实体或组件上。 重要提示&…

气流流型烟雾模型研究相关法规要求及拍摄注意事项

气流模式可视化提供制药设施中实际气流模型的视觉记录。它是目前最广泛接受的、证明关键工艺区域的气流模型满足监管期望的方法。此外,气流模型可视化允许多个职能组织发现气流设计和功能的有效性和意义,特别是在关键领域。 与气流模型相关的法规指南要求…

Java——反射

1. 定义 Java的反射(reflection)机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性,既然能拿到,那么我们就可以…

【Zookeeper】两种基于原生zk客户端的分布式锁的实现

基于zk的分布式锁的实现主要依赖zk节点的原子性,可以基于原生zk来自己实现分布式锁,更多的是基于Curator这个框架来直接使用基于zk的分布式锁[1]。这里我们仅仅讨论基于原生zk客户端依赖自己实现的zk分布式锁。 原生zk客户端中的一些调用如getChildren方…

算法课程笔记——蓝桥云课第25次云课

算法课程笔记——蓝桥云课第25次云课

DDD学习笔记二

模型的要素——用例、视图和构造块 模型的构建步骤 1)从用例场景开始,给模型输入概念、属性、术语。 2)构建静态领域模型(类图),发现领域概念和对象属性。 3)构建动态领域模型(时序图…

Redis 高速性能揭秘:核心原因解析

1. 数据结构设计 Redis 的高性能很大程度上归功于其内部精心设计的数据结构。Redis 支持五种基本数据类型:字符串(String)、列表(List)、集合(Set)、有序集合(Sorted Set&#xff0…

Java中的数据结构选择指南

Java中的数据结构选择指南 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿!今天我们来探讨在Java中如何选择适合的数据结构以提高代码效率和性能。 1. 简介 在…

MySQL中ALTER DATABASE语句的使用

ALTER DATABASE 是一个数据库管理命令,主要用于修改或更改已存在数据库的各种属性和配置。 ALTER {DATABASE | SCHEMA} [db_name]alter_option ... ALTER {DATABASE | SCHEMA} db_nameUPGRADE DATA DIRECTORY NAMEalter_option: {[DEFAULT] CHARACTER SET [] chars…

rollup-plugin-visualizer 打包体积分析插件(vue+vite)

安装: npm install rollup-plugin-visualizer基本用法: vite.config.js import { visualizer } from rollup-plugin-visualizermodule.exports {plugins: [visualizer({open: true, // 注意这里要设置为true,否则无效 gzipSize: true, /…

在数字化转型中,数字孪生技术的作用和价值几何?

引言:随着全球化和市场竞争的加剧,企业需要通过数字化转型来提高生产效率、优化产品质量、降低成本,以增强自身竞争力。企业需要通过数字化转型更好地理解客户需求,提供个性化、定制化的产品和服务,从而满足客户的多样…

无人门店社区拼团小程序系统源码

​打造便捷购物新体验 🛒 引言:社区购物新趋势 随着科技的飞速发展,无人门店和社区拼团已经成为购物的新趋势。而结合这两者的“无人门店社区拼团微信小程序”更是为我们带来了前所未有的便捷购物体验。无需排队、无需现金交易,只…

平面点云格网过程及可视化介绍(python)

1、背景介绍 实际人工构造物中,很多物体表面为平面结构,因此将点云投影在二维平面上进行处理,如进行点云面积计算、点云边缘提取等。 具体案例可以参考博客:详解基于格网法统计平面点云面积_点云格网法计算xy投影面积-CSDN博客、点…