ONLYOFFICE Docs 9.0 per sviluppatori: aggiornamento delle API
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.
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.
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
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",
...
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:
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
- Generazione di un report sui feedback degli utenti
- Generazione di una fattura dai dati dell’ordine
- Generazione di un contratto di lavoro
- Generazione di un piano di investimento personalizzato
- Generazione di un report sull’inventario
- Creazione di una presentazione di analisi di mercato per startup
- Creazione di un’offerta commerciale
- Creazione di un piano di formazione per dipendenti
- Creazione di un report annuale aziendale
Macro
Sono disponibili nuovi esempi di macro per tutti i tipi di editor, ad esempio:
- Ridimensionamento immagine (Editor di PDF)
- Creazione di un elenco con content control (Editor di documenti)
- Ordinamento tabelle (Editor di documenti)
- Rimozione di fogli duplicati (Editor di fogli di calcolo)
- Divisione dei fogli di dati (Editor di fogli di calcolo)
- Regolazione dei rientri (Editor di presentazioni)
- Rimozione dei paragrafi vuoti (Editor di presentazioni)
- Rimozione delle caselle di testo vuote (Editor di presentazioni)
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
Link utili
Novità in ONLYOFFICE Docs 9.0: blog / webinar
Intervista al team di sviluppo su Docs 9.0
Crea il tuo account ONLYOFFICE gratuito
Visualizza, modifica e collabora su documenti, fogli, diapositive, moduli e file PDF online.