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

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

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

Параметры
НазваниеОписаниеТипПример
Данные объекта OLE, которые необходимо отправить в объект window.Asc.plugin.info и использовать плагин.строковый«{data}»
Тип редактора, в котором в данный момент запущен плагин.строковый«word»
GUID OLE-объекта в текущем документе.строковый«asc.{UUID}»
Высота OLE-объекта измеряется в миллиметрах.численный70
Ссылка на изображение (его визуальное представление), хранящееся в OLE-объекте и используемое плагином.строковый«./resources/image.png»
Коэффициент конвертации миллиметра в пиксель для отрисовки вектора объекта OLE.численный3
Идентификатор объекта OLE в текущем документе.строковый1
Заставляет документ пересчитывать данные своего содержимого.логическийtrue
Проверяет, был ли изменен размер объекта OLE.логическийtrue
Ширина объекта 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);
}
Была ли полезна статья?
Позвольте нам стать лучше