Добавление svg в Excel с помощью надстройки office

#excel #office-js #office-addins #excel-addins

Вопрос:

Я создаю диаграмму D3JS из данных Excel в надстройке Office (office-js) в виде svg. Теперь у меня возникли проблемы с добавлением SVG в лист Excel.

Будет ли это работать с офисным дополнением?

Ответ №1:

Проблема в том, что векторные форматы файлов не поддерживаются в Office. На самом деле, если вы попытаетесь вставить изображение *.svg непосредственно из функции вставка->изображения в Excel, вы увидите, что изображение будет вставлено не так, как вы ожидаете. Это верно и для Excel Online.

Я бы посоветовал вам попробовать форматы jpg, jpeg, png, gif, bmp, tif или tiff вместо этого.

Вы можете попробовать использовать следующий код:

  const svgIsSupported = Office.context.requirements.isSetSupported('ImageCoercion', 1.2);
      
if (svgIsSupported){
   Office.context.document.setSelectedDataAsync(svgImage, { coercionType: Office.CoercionType.XmlSvg }, (result) => {
       console.log(result);
    });
  }
}

 

Дополнительные сведения см. в разделе Вставка SVG-изображения.