Продукты Р7
Корпоративный сервер 2024
Корпоративный сервер 2024
Сервер документов
Сервер документов
Редакторы документов
Редакторы документов
Корпоративный сервер 2019
Корпоративный сервер 2019
Графика
Графика
ВКС и мессенджер
ВКС и мессенджер
Мобильные редакторы
Мобильные редакторы
Почтовый сервер
Почтовый сервер
Органайзер
Органайзер
Сервер лицензирования
Сервер лицензирования
Файл-Экспресс
Файл-Экспресс
Аналитика
Аналитика
Дополнительно
Часто задаваемые вопросы
Разработчикам
Интеграции
Новые возможности

info object

Обновлено: 28.07.26

Описание

Определяет вспомогательный объект window.Asc.plugin.info, который доступен при работе плагина.

В нем хранится вся информация о редакторе, который использует плагин (используемый editorType ↗ — текстовые документы, таблицы, презентации) и дополнительные настройки для OLE-объектов (их ширина, высота, отношение миллиметра к пикселю для векторной отрисовки OLE-объектов и некоторых других OLE-объектов). параметры объекта).

Этот объект используется для изменения данных объекта и отправки дополнительных параметров при выполнении метода window.Asc.plugin.executeCommand ↗.

Например, если содержимое документа изменилось и требуется пересчет, параметр пересчета должен быть установлен в значение true. Это действие необходимо, поскольку процесс пересчета является асинхронным. Кроме того, может потребоваться загрузка некоторых других данных (например, шрифт или что-то еще).

Уточнение

См. доступные параметры объекта window.Asc.plugin.info ниже, чтобы узнать о них больше.

Параметры

НазваниеОписаниеТипПример
dataДанные объекта OLE, которые необходимо отправить в объект window.Asc.plugin.info и использовать плагин.строковый«{data}»
editorTypeТип редактора, в котором в данный момент запущен плагин.строковый«word»
guidGUID OLE-объекта в текущем документе.строковый«asc.{UUID}»
heightВысота OLE-объекта измеряется в миллиметрах.численный70
imgSrcСсылка на изображение (его визуальное представление), хранящееся в OLE-объекте и используемое плагином.строковый«./resources/image.png»
mmToPxКоэффициент конвертации миллиметра в пиксель для отрисовки вектора объекта OLE.численный3
objectIdИдентификатор объекта OLE в текущем документе.строковый1
recalculateЗаставляет документ пересчитывать данные своего содержимого.логическийtrue
resizeПроверяет, был ли изменен размер объекта OLE.логическийtrue
widthШирина объекта OLE измеряется в миллиметрах.численный70

Пример параметров data, height, imgSrc, mmToPx, objectId и width:

window.Asc.plugin.button = function (id) {
    var _info = window.Asc.plugin.info;
    var _method = (_info.objectId === undefined) ? "asc_addOleObject" : "asc_editOleObject";
    _info.width = _info.width ? _info.width : 70;
    _info.height = _info.height ? _info.height : 70;
    _info.widthPix = (_info.mmToPx * _info.width) >> 0;
    _info.heightPix = (_info.mmToPx * _info.height) >> 0;
    _info.imgSrc = window.g_board.getResult(_info.widthPix, _info.heightPix).image;
    _info.data = window.g_board.getData();
    var _code = "Api." + _method + "(" + JSON.stringify(_info) + ");";
    this.executeCommand("close", _code);
};

Пример для параметра editorType:

function createScriptFromArray (aSelected) {
    var sScript = '';
    if (aSelected.length > 0) {
        switch (window.Asc.plugin.info.editorType) {
            case 'word': {
                sScript += 'var oDocument = Api.GetDocument();';
                sScript += '\noDocument.CreateNewHistoryPoint();';
                sScript += '\nvar oParagraph, oRun, arrInsertResult = [], oImage;';
                sScript += '\noDocument.InsertContent(arrInsertResult);';
                break;
            }
        }
    }
    return sScript;
}

Пример для параметра guid:

window.Asc.plugin.init = function () {
    var plugin_uuid = window.Asc.plugin.info.guid;
};

Пример пересчета параметра:

window.Asc.plugin.init = function () {
    var sScript = 'var oDocument = Api.GetDocument();';
    sScript += 'oDocument.CreateNewHistoryPoint();';
    sScript += 'oParagraph = Api.CreateParagraph();';
    sScript += 'oParagraph.AddText(\'Hello word!\');';
    sScript += 'oDocument.InsertContent([oParagraph]);';
    window.Asc.plugin.info.recalculate = true;
    this.executeCommand("close", sScript);
};

Пример параметра изменения /resize размера:

if (window.Asc.plugin.info.resize === true) {
    return window.Asc.plugin.button(0);
}

Была ли эта статья полезной?

Поделитесь пожалуйста своим мнением

      В статье есть ошибкиРекомендации не помоглиТекст трудно понятьСодержание статьи не соответствует заголовкуДругое