随着 8.0 版新功能的发布,ONLYOFFICE 团队更新了编辑器、文档生成器和插件的 API。请阅读本文了解详情。
PDF 支持
ONLYOFFICE 在 documentType 参数中添加了 pdf 文档这一类型。现在完全支持PDF文件*,包括含有可填写字段的文件,并且可以在ONLYOFFICE PDF 编辑器中打开、批注和填写(以前此类文件被识别为文档并在文档编辑器中打开)。
var docEditor = new DocsAPI.DocEditor("placeholder", {
"documentType": "pdf",
*还有 DjVu、OXPS 和 XPS
用于处理表单的 API
添加到 Callback handler 的formsdataurl参数允许使用提交的表单数据定义JSON文件的URL。此文件包含以下参数:
- key
- tag
- value
- type (text, checkBox, picture, comboBox, dropDownList, dateTime, radio)
此外,您将在 DocBuilder API 中找到新的表单方法:
- ApiDocument/GetFormsData,可从当前文档中的所有表单返回数据
- ApiDocument/SetFormsData,用于将数据设置为指定的表单
builder.CreateFile("docx");
var oDocument = Api.GetDocument();
var oParagraph1 = oDocument.GetElement(0);
var oCheckBox = Api.CreateCheckBoxForm({"key": "BestCompany"});
oParagraph1.Push(oCheckBox);
var oTextForm = Api.CreateTextForm({"key": "CompanyName"});
oParagraph1.Push(oTextForm);
oDocument.SetFormsData([
{"key": "BestCompany", "value": true},
{"key": "CompanyName", "value": "ONLYOFFICE"}
]);
builder.SaveFile("docx", "SetFormsData.docx");
builder.CloseFile();
增强 WOPI 支持
最新版本带来了 WOPISrc 查询参数,并添加在从浏览器到服务器的请求中。这样您可以创建多个独立的 ONLYOFFICE 实例。负载平衡请求可确保协作编辑正常工作:编辑同一文档的所有用户都由同一服务器提供服务.WOPISrc
对于 WOPI 来说,积分模块( integrator)发送的参数已使用。对于文档 API,document.key 参数将写入 .WOPISrc
转换 API
添加到转换请求的水印字段,定义了一个 JSON 对象,其中包含水印的属性,该水印在转换过程中会插入到 PDF 和图像文件中。
"async": false,
"filetype": "docx",
"key": "Khirz6zTPdfd7",
"outputtype": "pdf",
"title": "Example Document Title.docx",
"url": "https://example.com/url-to-example-document.docx",
"watermark": {
"align": 1,
"fill": [255, 0, 0],
"height": 100,
"margins": [ 10, 10, 10, 10 ],
...
支持数据库 Oracle 和 Microsoft SQL Server
在支持的数据库中,增加了 Oracle 和 Microsoft SQL Server。要连接它,请将数据库类型更改为. For Docker,您需要调整 DB_TYPE 参数.oracle / mssql
此外,您可以使用:
- oracle 的高级连接设置 –
oracleExtraOptions
- mssql 的高级连接设置 –
msSqlExtraOptions
用户头像
从 8.0 版本开始,可以在编辑器中添加用户头像,以实现更好的团队可视化。
因此,info操作类型已添加到 setUsers 方法和 onRequestUsers 事件中,以使用data.id参数中指定的 ID 为用户设置头像。新添加的字段定义了用户头像的路径users.image
、var onRequestUsers = function (event) {
var c = event.data.c;
var id = event.data.id;
...
docEditor.setUsers({
"c": event.data.c,
"users": [
{
"email": "john@example.com",
"id": "78e1e841",
"image": "https://example.com/url-to-user-avatar1.png",
"name": "John Smith"
},
此外,editorConfig.user 参数添加了image 字段,用于定义用户头像路径:
var docEditor = new DocsAPI.DocEditor("placeholder", {
"editorConfig": {
...
"user": {
"group": "Group1",
"id": "78e1e841",
"image": "https://example.com/url-to-user-avatar.png",
"name": "John Smith"
}
编辑器的更多 API 更新
- editorConfig.customization.mobileForceView 参数,用于定义启动时是否在查看/编辑模式下打开移动文档编辑器。默认值为 true。
- data 对象中的 link 字段,被发送到 events.onRequestReferenceData 事件。
获取最新的ONLYOFFICE 文档开发者版:
立即下载
增强的插件 API
新添加的插件方法允许启动和管理幻灯片:
- EndSlideShow
- GoToNextSlideInSlideShow
- GoToPreviousSlideInSlideShow
- GoToSlideInSlideShow
- PauseSlideShow
- ResumeSlideShow
- StartSlideShow
下面是几个代码示例:
window.Asc.plugin.executeMethod ("StartSlideShow");
window.Asc.plugin.executeMethod ("GoToSlideInSlideShow", [2]);
window.Asc.plugin.executeMethod ("EndSlideShow");
更多文档生成器的 API 更新
在 DocBuilder API 中,还添加了多个冻结窗格和注释方法,以及其他一些方法,包括以下方法:
- ApiFreezePanes/GetLocation,返回一个区域,用于描述活动工作表视图中的冻结单元格。
- ApiBlockLvlSdt/AddComment,用于向当前块内容控件添加注释。
- ApiSection/GetPageHeight,用于获取当前部分的页面高度。
- ApiDocument/AddDrawingToPage,用于将形状添加到指定页面。
查看所有新方法。
下载文档生成器
相关链接
ONLYOFFICE 文档 8.0的新功能:博客 / 视频
面向开发人员的 ONLYOFFICE
ONLYOFFICE 文档生成器
API 文档
文档 API 更新日志
插件和宏更新日志
文档生成器更新日志