是否可以使用Open XML sdk来操作当前在Office应用程序(word/ppt)中打开的文档的某些部分。我知道最简单的事情是使用VSTO,但它很慢,而且会涉及到剪贴板用于插入元素,OXML sdk是直接和简单的。
如果有人可以发布一些代码样本,那就太好了。
提前感谢
Rakesh
发布于 2010-03-19 23:56:09
显然,如果没有Sharepoint,你就无法做到这一点。
根据Zeyad Jarabi/..
...you需要一个能够理解如何获取共享锁(如SharePoint或SkyDrive)的平台。如果没有这个概念,那么应用程序和软件开发工具包只能采用读或写锁定,这将阻止这两种技术访问同一文件。
发布于 2012-07-03 08:55:34
是的,可以使用XMLSDK2修改打开的OpenXML文档,然后使用更改后的XML语言更新打开的文档。
http://msdn.microsoft.com/en-us/library/ff191178.aspx
http://code.msdn.microsoft.com/Improve-Automation-415bff13
基本上,您从一个范围中获取xml,将其视为流,将其打包,在包上使用sdk,然后通过反向过程插入修改后的xml。
明智的是,sdk的这种常识用法是不可能的。然而,这是错误的。
发布于 2010-03-14 21:24:17
如下所示:
//include the namespace
using DocumentFormat.OpenXml.WordProcessing
//Open and manipulate temp.docx
using (WordprocessingDocument myDoc = WordprocessingDocument.Open("temp.docx", true))
{
//Access main part of document
MainDocumentPart mainPart = myDoc.MainDocumentPart;
//Add new comments part to document
mainPart.AddNewPart<WordprocessingCommentsPart>();
//Delete Styles part within document
mainPart.DeletePart(mainPart.StyleDefinitionsPart);
//Iterate through all custom xml parts within document
foreach (CustomXmlPart customXmlPart in mainPart.CustomXmlParts) {
//DO SOMETHING
}
}此外,您还可以使用LINQ来避免foreach循环。
https://stackoverflow.com/questions/2442241
复制相似问题