我有一个 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 文件的方式。