ONLYOFFICE Docs 9.0 per sviluppatori: aggiornamento delle API

1 luglio 2025Da Alice

La nuova versione di ONLYOFFICE Docs è arrivata, ricca di aggiornamenti che offrono più funzionalità, maggiore possibilità di personalizzazione e migliori prestazioni. Se sei uno sviluppatore o un integratore che vuole sfruttare le API migliorate, questa versione ha molto da offrire. Scopri tutti i dettagli qui sotto.

ONLYOFFICE Docs 9.0 for developers: API updates

Visualizzatore di diagrammi

Il nuovo Visualizzatore di diagrammi è disponibile per web, desktop e web mobile. Permette di aprire file di diagrammi senza bisogno di app di terze parti.

Dove trovarlo nelle API: il tipo di documento diagram è stato aggiunto al parametro documentType.

ONLYOFFICE Docs 9.0 for developers: API updates

Supporto per nuovi formati di file

ONLYOFFICE continua ad ampliare la propria versatilità supportando sempre più formati. Nella versione 9.0 è possibile aprire file Markdown e OpenDocument Graphic in modalità visualizzazione.

Dove trovarlo nelle API: è stato aggiunto il supporto all’apertura dei formati odg e md.

Inoltre, con il lancio del Visualizzatore di diagrammi, è stata introdotta la conversione dai formati vsdm, vsdx, vssm, vssx, vstm e vstx. Consulta le API

ONLYOFFICE Docs 9.0 for developers: API updates

Maggiore possibilità di personalizzazione

La personalizzazione raggiunge un nuovo livello nella versione 9.0, offrendo agli utenti finali la possibilità di adattare ONLYOFFICE alle proprie esigenze.

Nuovi temi per l’interfaccia

Due nuovi temi, Modern Light e Modern Dark, migliorano l’aspetto visivo di ciascun editor.

Dove trovarli nelle API: gli ID theme-white e theme-night sono stati aggiunti al parametro editorConfig.customization.uiTheme.

const config = {
  editorConfig: {
    customization: {
...
      uiTheme: "theme-white",
...

ONLYOFFICE Docs 9.0 for developers: API updates

Selezione della dimensione del font per l’interfaccia in cinese semplificato

Il nuovo parametro garantisce una dimensione del font accurata nei layout in cinese semplificato, offrendo la flessibilità di utilizzare stili occidentali o cinesi tradizionali.

Dove trovarlo nelle API: parametro editorConfig.customization.forceWesternFontSize, il valore predefinito è false.

const config = {
  editorConfig: {
    customization: {
....
 forceWesternFontSize: false,
...

Nascondere gli avatar degli utenti

Il nuovo parametro consente di mostrare o nascondere gli avatar degli utenti nell’intestazione dell’editor, contribuendo a creare un’interfaccia pulita e priva di distrazioni.

Dove trovarlo nelle API: parametro editorConfig.customization.layout.header.user, il valore predefinito è true.

const config = {
  editorConfig: {
    customization: {
...
layout: {
        header: {
          editMode: true,
          save: true,
          user: true,
          users: true,
        },

Miglioramento delle prestazioni con il pre-caricamento

A partire dalla versione 9.0, è possibile pre-caricare le risorse statiche (HTML, CSS, JS, font) nella cache del browser prima di aprire un file, così da velocizzare il caricamento iniziale dell’editor di documenti. Consulta le API

Sono disponibili due opzioni:

1) Usando il parametro ?preload=placeholder 

<div id="placeholder"></div>

<script type="text/javascript" src="https://documentserver/web-apps/apps/api/documents/api.js?preload=placeholder"></script>

2) Inserendo manualmente un iframe di precaricamento

<iframe src="https://documentserver/web-apps/apps/api/documents/preload.html" style="display:none;"></iframe>

Ottieni l’ultima versione di ONLYOFFICE Docs Developer:

SCARICA ORA

Miglioramenti alle API per plugin e macro

Pulsanti personalizzati per i Content Control. Utilizza la classe Asc.ButtonContentControl per creare pulsanti unici per i tuoi plugin. Definisci le azioni con il metodo attachOnClick e aggiungi le tue icone per aumentare la funzionalità. Consulta le API

(function(window){
  window.Asc.plugin.init = function()
  {
    let button = new Asc.ButtonContentControl();
    button.icons = '/resources/check%scale%(default).png';
    button.attachOnClick(function(contentControlId){
      Asc.plugin.executeMethod("RemoveContentControl", [contentControlId]);
    });
 
    button = new Asc.ButtonContentControl();
    button.icons = '/resources/close%scale%(default).png';
    button.attachOnClick(function(contentControlId){
      Asc.plugin.executeMethod("RemoveContentControls", [[{"InternalId": contentControlId}]]);
    });
  }
})(window);

Impostare la diapositiva attiva tramite indice. Passa facilmente a qualsiasi diapositiva nelle presentazioni usando il nuovo metodo GoToSlide.

expression.GoToSlide(slideNumber);

Elemento elenco per Content Control. L’introduzione dell’enumerazione ContentControlListElement semplifica ulteriormente la gestione dei content control all’interno dei documenti.

Calcoli asincroni. Gestisci qualsiasi richiesta all’interno del corpo di una funzione personalizzata creata tramite macro.

(function () {
  /**
   * World Bank indicator value for a specific year.
   * @customfunction

   * @param   {string} country   ISO-3 code, e.g. "TUR"
   * @param   {string} indicator Indicator code, e.g. "SP.POP.TOTL"
   * @param   {number} year      Four-digit year, e.g. 2024
   * @returns {any}             Numeric value or #N/A
   *
   * @example =WB("TUR","SP.POP.TOTL",2024)
   */
  async function WB(country, indicator, year) {
    // Build URL (World Bank allows CORS)
    const url =
      `https://api.worldbank.org/v2/country/${country}/indicator/${indicator}` +
      `?format=json&per_page=20000`;

    try {
      const r = await fetch(url);
      const [meta, data] = await r.json();

      // Find the row for the requested year
      const row = data.find((v) => v.date === year.toString());
      if (!row || row.value == null) return "#N/A";

      return row.value;               // resolves the Promise
    } catch (e) {
      return "#ERROR";
    }
  }

  // Register the function so it becomes a sheet formula
  Api.AddCustomFunction(WB);
})();

Nuovi esempi

Con l’ultimo aggiornamento della documentazione API, abbiamo incluso ancora più esempi pronti all’uso per Document Builder e macro, rendendo il processo di sviluppo più fluido ed efficiente.

Framework Builder

Macro

Sono disponibili nuovi esempi di macro per tutti i tipi di editor, ad esempio:

Vedi tutti gli esempi di macro

API Office

Per l’Office JavaScript API, abbiamo aggiunto molti nuovi metodi nella versione 9.0, inclusi quelli per:

  • Content Control
  • XML personalizzati
  • Moduli
  • Proprietà personalizzate
  • Core
  • Range
  • Disegno
  • Presentazioni
  • Pagine note

Consulta l’elenco completo dei nuovi metodi

Crea il tuo account ONLYOFFICE gratuito

Visualizza, modifica e collabora su documenti, fogli, diapositive, moduli e file PDF online.