设置自定义 Open XML 元数据

发布于 2024-11-19 18:22:03 字数 742 浏览 2 评论 0原文

背景

Open XML 中的自定义属性存储在 docProps/custom.xml 中,看起来像这样(对于字符串):

<property fmtid="{xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxxxxx}" pid="2" name="Key">
    <vt:lpwstr>Value</vt:lpwstr>
</property>

Open XML (v1) 规范没有给出很多有关 fmtidpid 的详细信息。它仅在第 7.3.2.2 节中说明:

[PID] 将自定义属性与 OLE 属性唯一关联

问题

我对规范的模糊解释有几个问题:

  1. 什么是 OLE 属性?
  2. 是否可以在 custom.xml 中添加新的 OpenXML 属性而不存储 OLE 属性?
  3. pid 是否需要对每个 fmtid 是唯一的,或者对于 custom.xml 中的所有 fmtid 是唯一的
  4. 为什么我自己的属性不需要在custom.xml中出现在Word中吗?

Background

Custom properties in Open XML are stored in docProps/custom.xml and look like this (for a string):

<property fmtid="{xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxxxxx}" pid="2" name="Key">
    <vt:lpwstr>Value</vt:lpwstr>
</property>

The Open XML (v1) specification doesn't give many details about fmtid and pid. It merely states in section 7.3.2.2:

[PID] Uniquely relates a custom property with an OLE property

Questions

I have a few questions about the specification's vague explanation:

  1. What are OLE properties?
  2. Is it possible add a new OpenXML property in custom.xml without storing an OLE property?
  3. Does pid need to be unique per fmtid, or unique for all fmtids in custom.xml
  4. Why don't my own properties in custom.xml appear in Word?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

凝望流年 2024-11-26 18:22:04

我将根据我通过实验发现的内容部分回答我自己的问题。

  1. OLE 属性是存储在替代文件流中的 NTFS 扩展属性。可以使用 DSOfile.dll 查看或修改它们。请参阅此 StackOverflow 问题。

  2. 可以通过修改custom.xml来添加自定义属性。仅当 fmtid 属于 Word 或加载的 COM 加载项时,它们才会出现在 Word 的属性对话框中。

I'm going to partially answer my own question based on what I discovered by experimenting.

  1. OLE properties are NTFS extended attributes that are stored in alternative file streams. They can be viewed or modified with DSOfile.dll. See this StackOverflow question.

  2. Custom properties can be added by modifying custom.xml. They will only appear in Word's properties dialog if the fmtid belongs to Word or a loaded COM add-in.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文