Universal Network Objects (UNO) — це модель компонентів, що використовується в пакетах комп'ютерних програм OpenOffice.org та LibreOffice . Він базується на інтерфейсі та розроблений для забезпечення сумісності між різними мовами програмування, об'єктними моделями та архітектурами машин на одній машині, в LAN або через Інтернет.
Користувачі можуть реалізовувати або отримувати доступ до компонентів UNO з будь-якої мови програмування, для якої існує прив'язка мови . Повні прив'язки мови UNO існують для C++ (залежно від компілятора), Java, Object REXX, Python та Tcl . Прив'язки, що дозволяють доступ до компонентів, але не запис, існують для StarOffice Basic, OLE Automation та . NET- інфраструктура спільної мови . Зокрема, цей API використовується макросами.
Універсальні мережеві об'єкти працюють у середовищі виконання UNO (URE).
Версія UNO для Apache OpenOffice випущена за умовами ліцензії Apache (версія 2) як безкоштовне програмне забезпечення з відкритим вихідним кодом .
UNO для виклику функцій Приклади: зовнішня програма може експортувати ODT- файл як PDF- файл або імпортувати та конвертувати DOCX, викликаючи LibreOffice через інтерфейс UNO. Інша зовнішня програма може отримати доступ до комірки та формул з файлу LibreOffice Calc.
Приклади застосування: Docvert, JODConverter, unoConv .
UNO для доповнень Програмісти можуть писати та інтегрувати власні компоненти UNO в OpenOffice/LibreOffice. Ці компоненти можна додавати до меню та панелей інструментів LibreOffice; вони називаються «Доповненнями». Доповнення можуть розширити функціональність LibreOffice.
Інтеграцію нових компонентів підтримують деякі інструменти та сервіси. Три основні кроки такі:
Зареєструйте нові компоненти в LibreOffice. Цього можна досягти за допомогою інструменту unopkg . Інтегруйте нові компоненти як сервіси. Вам допоможуть сервіси ProtocolHandler та JobDispatch. Змініть інтерфейс користувача (меню або панелі інструментів). Це можна зробити майже автоматично, написавши текстовий XML-файл, який описує зміни.
Приклад застосування: jOpenDocument .
Посилання
Зовнішні посилання
Apache OpenOffice
Сторінка проекту UNO Development Kit Огляд та технічні деталі Огляд-резюме Java Комплект розробки програмного забезпечення OpenOffice.org Інструментарій ODF: кроки переходу Посібник розробника
LibreOffice
див. unoexe та unopkg Усередині LibreOffice: Універсальні мережеві об'єкти
Лінгви франка (нативні для Java та Python)
ООН для Об'єкта REXX UNO для PHP (написано на C++). UNO для FreePascal/Delphi (Можливо, залишився без підтримки)