【问题标题】:Is there functionality that is NOT exposed in the OpenXML SDK v2?是否存在 OpenXML SDK v2 中未公开的功能?
【发布时间】:2010-07-23 23:01:59
【问题描述】:

我想知道在 COM 接口中暴露的 SDK 是否有什么不能做的事情?

【问题讨论】:

    标签: ms-office openxml openxml-sdk


    【解决方案1】:

    OpenXML SDK 是 OpenXML 文件格式的便利层。使用此 SDK,您可以做所有可能与文件格式相关的事情,例如插入、修改和删除内容、元数据和格式。

    与 Office 的 COM 自动化相比,您无法执行与应用程序逻辑相关的任何操作。举个例子:使用 OpenXML SDK,您无法知道文本文档中某个元素的页码,因为这需要分页;您无法重新计算电子表格的公式,因为这需要 Excel 的数学引擎,或者您无法将演示文稿幻灯片转换为图像,因为这需要 PowerPoint 来呈现幻灯片。

    关于 Word,您可以查看以下演示文稿,该演示文稿演示了何时使用 OpenXML SDK 与 Office 自动化:

    Open XML SDK + Word Automation Services Presentation at PDC

    【讨论】:

    • +1。确切地。考虑它的最简单方法(至少对我而言)是 SDK 实际上并没有 render 任何东西,它只是在您使用将解释格式并呈现它的客户端应用程序(例如 Word)。这是一个演示渲染问题的 SO 问题示例:stackoverflow.com/questions/2638046/…。就个人而言,我几乎从不使用 SDK,因为它没有提供任何我无法通过 System.IO.Packaging 自己完成的功能。
    • @Otaku:您是否看过 SDK 的 2.0 版,它可以让您完全键入访问文件格式模型(对于文本文档)?这很方便,例如与 Linq 结合使用,或者在创建文档时,因为这不需要您在 XML 级别上工作。但当然,没有额外的功能,只是在上面提供了更多的便利......
    • 是的,我看过 2.0。无论如何,我的大部分工作都是使用 Linq-to-XML 以 XML 格式完成的,所以它没有为我提供任何东西。我从手动标记开始,所以它对我来说更舒适和方便。并不是说 SDK 一文不值,在过去的 6 个月里我已经使用了很多,尤其是在尝试学习新概念并且所有代码示例和示例都来自 SDK 时。如果刚开始使用 Open XML 编程,我肯定也会向其他人推荐它——它比滚动你自己的例程来做诸如建立关系之类的事情要容易得多。
    猜你喜欢
    • 2015-08-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-24
    • 2019-09-04
    • 2022-06-10
    • 2010-09-07
    相关资源
    最近更新 更多