0

我有一个 PPD 文档,我需要在其中附加一些自定义 XML 数据以供参考。我的xml数据是这样的

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<c:chartSpace xmlns:c="http://schemas.openxmlformats.org/drawingml/2006/chart"
xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main"
xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships"
xmlns:c16r2="http://schemas.microsoft.com/office/drawing/2015/06/chart">

<c:date1904 val="0"/>

   other data...

</c:chartSpace>

我试图添加这样的元数据

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<c:chartSpace xmlns:c="http://schemas.openxmlformats.org/drawingml/2006/chart"
xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main"
xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships"
xmlns:c16r2="http://schemas.microsoft.com/office/drawing/2015/06/chart">

<c:date1904 val="0"/>

<c:authorMeta>
    <c:authorId>23</c:authorId>
    <c:authorName>User 1</c:authorName>
</c:authorMeta>

   other data...

</c:chartSpace>

但看起来 PowerPoint 从演示文稿中删除了这些内容。我错过了什么吗?解决此问题的正确方法是什么?

更新:

pptgenjs有一个名为用于创建 pptx 文件的开源库。在创建图表时,库会连接 XML 标记并创建一个chart.xml文件。在做这件事时,我试图添加一些用户传递的自定义元数据。但是在 Powerpoint 中打开它时,标签会自动删除。这就是为什么我询问是否有任何特定规范可以在 pptx XML 文件中添加自定义标签。

自定义 XML 是如何添加的?

我正在使用 PptxGenJs 库来创建演示文稿。在那个库中,我编辑了makeXmlCharts函数并将我的自定义 XML 数据添加到其中。

   function makeXmlCharts(rel) {
      var strXml = '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
      // other code
      strXml += '<customTag>data</customTag>'
      // other code

      return strXml;
   }

最后使用ppt.write('base64')获取base64数据。

pptx.write('base64').then(async function(data) {
  await PowerPoint.run(async function(context) {
    context.presentation.insertSlidesFromBase64(data);
    await context.sync();
  });
}).catch(err=> {
  console.log(err)
})

这就是我将编辑后的 ​​XML 数据插入 PPTX 文件的方式。

4

0 回答 0