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

info object

Обновлено: 04.03.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);
}

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

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

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