Описание
Определяет вспомогательный объект 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» |
guid | GUID 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); }