DEV Community

Cover image for ONLYOFFICE Docs 8.0 for developers: PDF forms, bidirectional text, API & Doc Builder updates, and more
Kseniya Fedoruk for ONLYOFFICE

Posted on

ONLYOFFICE Docs 8.0 for developers: PDF forms, bidirectional text, API & Doc Builder updates, and more

The latest version of ONLYOFFICE Docs for developers is already available with lots of new features and API enhancements.

ONLYOFFICE Docs Developer Edition v.8.0

  • Fillable PDF forms
  • Bidirectional text & RTL interface
  • Enhanced Screen Readers
  • Goal Seek, Chart Wizard, Series in sheets
  • Setting the final color for the color changing effects in slides
  • Serbian and Arabic localization
  • Updated UI for plugins

Detailed changelog can be found on GitHub.

PDF support

We added the pdf document type to the documentType parameter. This means that PDF files*, including those containing fillable fields, are now fully supported and can be opened for annotating and filling in ONLYOFFICE PDF Editor (earlier such files were recognized as documents and opened in the document editor).

var docEditor = new DocsAPI.DocEditor("placeholder", {     
    "documentType": "pdf",
Enter fullscreen mode Exit fullscreen mode

*Also DjVu, OXPS and XPS

API for working with forms

The formsdataurl parameter added to the Callback handler allows defining the URL to the JSON file with the submitted form data. This file contains the following parameters:

  • key
  • tag
  • value
  • type (text, checkBox, picture, comboBox, dropDownList, dateTime, radio)

Moreover, you will find new form methods in the DocBuilder API:

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();
Enter fullscreen mode Exit fullscreen mode

Enhanced WOPI support

The latest release brings the WOPISrc query parameter which is added to the requests from the browser to the server. This allows you to create several independent instances of ONLYOFFICE. Load balancing requests with WOPISrc ensure that collaborative editing works correctly: all users editing the same document are served by the same server.

For WOPI, the parameter sent by the integrator is used. For the Docs API, the document.key parameter is written to WOPISrc.

Conversion API

The watermark field added to the conversion request defines a JSON object containing the properties of a watermark which is inserted into the PDF and image files during conversion.

"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 ],
  ...
Enter fullscreen mode Exit fullscreen mode

Support for Oracle and Microsoft SQL Server databases

Among the supported databases there are now also Oracle and Microsoft SQL Server. To connect it, change the database type to oracle / mssql. For Docker, you will need to adjust the DB_TYPE parameter.

User avatars

Starting from version 8.0, it’s possible to add user avatars to be displayed in the editors for better team visualization.

Thus, the info operation type is added to the setUsers method and onRequestUsers event to set the avatars for the users with the IDs specified in the data.id parameter. And the newly added users.image field defines the path to the user avatar.

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"             
     },
Enter fullscreen mode Exit fullscreen mode

Besides, the editorConfig.user parameter now contains the image field to define the path to the user avatar:

var docEditor = new DocsAPI.DocEditor("placeholder", {    
"editorConfig": {
...
    "user": {             
    "group": "Group1",             
    "id": "78e1e841",             
    "image": "https://example.com/url-to-user-avatar.png",             
    "name": "John Smith"         
     }
Enter fullscreen mode Exit fullscreen mode

API enhancements for plugins

The newly added plugin methods allow launching and managing slideshows:

Find below several code samples:

window.Asc.plugin.executeMethod ("StartSlideShow");

window.Asc.plugin.executeMethod ("GoToSlideInSlideShow", [2]);

window.Asc.plugin.executeMethod ("EndSlideShow");

Further API updates for Document Builder

In the DocBuilder API, we also added multiple freeze panes and comment methods, and some others, including the following ones:

Check the full list of new methods.

Useful links

Top comments (0)