Универсальные сетевые объекты (UNO) в OpenOffice и LibreOffice
Universal Network Objects
Универсальные сетевые объекты (UNO) в OpenOffice/LibreOffice: компонентная модель для совместимости языков программирования и платформ. Поддержка C++, Java, Python и др.
Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Содержание
Введение
Универсальные сетевые объекты (UNO) — это модель компонентов, используемая в программных пакетах OpenOffice.org и LibreOffice. Она основана на интерфейсах и разработана для обеспечения взаимодействия между различными языками программирования, объектными моделями и аппаратными архитектурами, как на одном компьютере, так и в локальной сети или через Интернет. Пользователи могут создавать или использовать компоненты UNO из любого языка программирования, для которого существует соответствующий языковой модуль (binding). Полные языковые модули UNO существуют для C++ (зависит от компилятора), Java, Object REXX, Python и Tcl. Для StarOffice Basic, OLE Automation и среды CLR (.NET Common Language Infrastructure) существуют модули, позволяющие получать доступ к компонентам, но не создавать их. В частности, этот API используется макросами. Универсальные сетевые объекты функционируют в среде выполнения UNO (URE). Версия UNO, используемая в Apache OpenOffice, распространяется под лицензией Apache (версия 2) как свободное программное обеспечение с открытым исходным кодом.
Universal Network Objects (UNO) is the component model used in the OpenOffice. org and LibreOffice computer software application suites. It is interface based and designed to offer interoperability between different programming languages, object models and machine architectures, on a single machine, within a LAN or over the Internet. Users can implement or access UNO components from any programming language for which a language binding exists. Complete UNO language bindings exist for C++ (compiler dependent), Java, Object REXX, Python, and Tcl. Bindings allowing access, but not writing, to components exist for StarOffice Basic, OLE Automation and the NET Common Language Infrastructure. In particular, this API is used by macros. Universal Network Objects operate within the UNO Runtime Environment (URE). The Apache OpenOffice version of UNO is released under the terms Apache License (Version 2) as free and open source software.
UNO для вызова функций
Примеры: внешняя программа может экспортировать файл ODT в файл PDF или импортировать и конвертировать DOCX, используя интерфейс UNO для вызова LibreOffice. Другая внешняя программа может обращаться к ячейкам и формулам из файла LibreOffice Calc. Примеры приложений: Docvert, JODConverter, unoConv.
Examples: an external program can export an ODT file as a PDF file, or import and convert a DOCX, calling LibreOffice by the UNO interface. Another external program can access a cell and formulas from LibreOffice Calc file. Application examples: Docvert, JODConverter, unoConv.
UNO для дополнений
Программисты могут создавать и интегрировать свои собственные компоненты UNO в OpenOffice/LibreOffice. Эти компоненты можно добавить в меню и панели инструментов LibreOffice; они называются "Расширениями". Расширения могут расширять функциональность LibreOffice. Интеграция новых компонентов поддерживается различными инструментами и сервисами. Основные этапы интеграции состоят из трех шагов:
Programmers can write and integrate their own UNO components to OpenOffice/LibreOffice. Those components can be added to the LibreOffice menus and toolbars; they are called "Add Ons". The Add Ons can extend the functionality of LibreOffice. The integration of new components is supported by some tools and services. The three main steps are as follows: