问题标签 [openxml]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
846 浏览

c# - .NET WinForms 编辑器控件支持 RTL\Hebrew 并导出到 OOXML\PDF?

我有兴趣替换我们在项目中使用的老化控件,它是一个简单的 HTML WYSIWYG 编辑器。我正在寻找的主要要求如下:

  1. 支持 RTL/希伯来语输入。
  2. 支持自定义编号样式(不仅仅是 1. 2. 3.、ABC 等)。
  3. 支持将内容导出为 OOXML(用于 Word 2007 包含)和 PDF。

如果有人可以推荐任何控件/组件进行审查,我将不胜感激。

0 投票
3 回答
42351 浏览

c# - 使用 OpenXml sdk 2.0 创建 Excel 文档

我已经使用 OpenXml SDK 2.0 创建了一个 Excel 文档,现在我必须设置它的样式,但我不能。

我不知道如何绘制背景颜色或更改不同单元格中的字体大小。

我创建单元格的代码是:

0 投票
4 回答
4634 浏览

email - 使用 OpenXML 在内存中发送电子邮件附件

我有一个使用 OpenXML 2 构建的 Excel 文件,我想将其作为电子邮件附件发送。例如

使用将电子表格保存到临时文件

工作正常。但是尝试将流直接作为电子邮件附件发送失败 - 当我这样做时,只需将一个空文件附加到电子邮件中

有人知道怎么做吗?

0 投票
1 回答
838 浏览

c# - 验证 Word 2007 模板文件

我正在开发一种解决方案,允许人们将 DOCX 文件作为模板上传。此模板用于生成带有数据库信息的 Word 文档。

我想做的是一旦模板被上传,检查它是否有错误。(我不希望我的解析器在使用模板时崩溃。)

我已经看到有关检查 Word 模板签名的问题,但这还不足以验证文件的完整性。当然,可以尝试解压缩文件,验证其中的 XML 等等,但这是相当 CPU 密集型的,如果有的话,我想要一种不同的方法。

是否有任何属于 Open XML SDK 或其他标准方法的解决方案?任何想法都值得赞赏。

0 投票
1 回答
2679 浏览

openxml - 当元素具有 xmlns 属性时,无法从 openxml 获取值

以下代码中的 xmlns 属性使我无法获得所需的值。适用于任何其他属性,但不适用于 xmlns。我无法控制给定的 xml - 如何获取 CrpId 值?

0 投票
1 回答
1903 浏览

c# - 如何在 C# 中打开加密的 OOXML 文档?

我想打开加密的 OOXML 文件,这些文件作为流存储在复合 OLE 文件中。Microsoft 有一个用于 OOXML 的 API(OOXML Format SDK 2.0,但它似乎缺乏一种操作加密 OOXML 文档的方法。因此,这分为两个问题。

  • 如何在 C# 中打开复合 OLE 文档?我发现了这个非常相似的问题,(阅读 C# 中的复合文档),但我希望可能有一种我错过的更清洁、更通用的方法。

  • 是否有一种高级方法来解密EncryptedPackageOLE 文档中的流?我发现的两个最佳参考是Decrypting Office DocumentsMS-OFFCRYPTO Examples。“解密 Office 文档”似乎解密成功,但它依赖外部 DLL ( Lyquidity.OleStorage.dll ) 来打开 OLE 文档并且对我不起作用。“MS-OFFCRYPTO 示例”在 C# 中有一个示例来解密流,但使用 C++ 示例来获取流。这两个参考看起来都有效,但是否有更高级别的 API 可以做同样的事情?

0 投票
2 回答
4815 浏览

xpath - 如何从 C# 中的 word (docx) 文档中获取文本?

我正在尝试从 word 文档中获取纯文本。具体来说,xpath 给我带来了麻烦。如何选择标签?这是我的代码。

0 投票
1 回答
290 浏览

c# - 为 FlatOPC 使用 System.IO.Packaging

我开发了一个使用 FlatOPC 文件的软件。我需要操作文件的几个部分。System.IO.Packaging 提供类 ZipPackage 和 ZipPackagePart 用于操作 .docx 文件。FlatOPC 没有实现。所以我建立了自己的。问题是,将 FlatOPCPackage 与 WordprocessingDocument 一起使用会导致引发 NullReferenceException,而我没有找到原因。调试显示仅调用了 FlatOPCPackage 的一种方法,并且该方法有效。

有没有人遇到过类似的问题?

0 投票
4 回答
10517 浏览

wcf - 奇怪的 WCF 错误 - IIS 托管 - 上下文被中止

我有一个 WCF 服务,它执行一些文档转换并将文档返回给调用者。在我的本地开发服务器上进行本地开发时,该服务托管在 ASP.NET 开发服务器上,控制台应用程序调用该操作并在几秒钟内执行。

当我通过 .svc 文件在 IIS 中托管服务时,其中两个文件正常工作,第三个文件被炸毁,它开始使用 OpenXml Sdk 构建 word 文档,但随后就死了。我认为这与 IIS 有关,但我不能指望它。

我一共生成了三种类型的文档。简而言之,这就是它的工作原理

SQL 2005 DB/IBM DB2 -> 由其他开发人员编写的 WCF 服务以公开数据。此服务只有一个使用 basicHttpBinding 的端点

My Service 调用他的服务,获取相关数据,使用 Open Xml Sdk 生成 Microsoft Word 文档,将其保存在服务器上并将路径返回给用户。

word文档不超过100KB。

我也在使用 basicHttpBinding,尽管我尝试了 wsHttpBinding 的结果相同。

令人惊奇的是它在本地的速度有多快,而且其中两个文档生成得很好,它的第三种文档类型拒绝工作。

到错误信息:

接收对http://myservername.mydomain.inc/MyService/Service.Svc的 HTTP 响应时发生错误。这可能是由于服务端点绑定未使用 HTTP 协议。这也可能是由于服务器中止了 HTTP 请求上下文(可能是由于服务器关闭)。有关更多详细信息,请参阅服务器日志。

在过去的 2 天里,我一直在试图弄清楚发生了什么,我已经尝试了一切,包括将 maxReceivedMessageSize、maxBufferSize、maxBufferPoolSize 等更改为较大的值,我什至包括:

看看 IIS 是否因此而窒息。

以编程方式,该服务没有什么特别之处,它只是使用 Open Xml Sdk 从数据中构造单词文档,就像我说的,当通过在 asp.net 开发服务器上本地运行的控制台应用程序调用时,所有 3 个文档在本地工作,即http: //localhost:3332/myService.svc

当我在 IIS 上托管它并尝试让 Windows 窗体应用程序调用它时,我收到错误消息。

我知道您会要求提供日志,所以是的,我在我的主机上启用了日志记录。

日志中没有错误,我正在记录所有内容。

基本上我调用另一个开发人员编写的两个服务操作。

MyOperation 调用 -> HisOperation1 然后是 HisOperation2,这两个调用都给了我复杂的类型。明天我要看看他的代码,因为他正在使用 LINQ2SQL,并且那里可能会发生一些有趣的事情。他正在使用各种集合等,但事实上我可以运行完全相同的文档,当服务在 ASP WebDev 服务器上本地托管时,让我们在几秒钟内将其称为“文档 3”,这是最奇怪的,为什么会它在缩小的 Cassini 上运行并在 IIS 上炸毁?

从日志看来,在调用 HisOperation1 和 HisOperation2 后服务刚刚进入 la-la 地死机,Windows 事件日志中有一个应用程序池 (w3wp.exe) 错误。

它被归类为 .NET 2.0 运行时错误。

任何帮助表示赞赏,睡眠不足对我来说很重要。

帮助我欧比旺克诺比,你是我唯一的希望。

0 投票
6 回答
26581 浏览

c# - Duplicating Word document using OpenXml and C#

I am using Word and OpenXml to provide mail merge functionality in a C# ASP.NET web application:

1) A document is uploaded with a number of pre-defined strings for substitution.

2) Using the OpenXML SDK 2.0 I open the Word document, get the mainDocumentPart as a string and perform the substitution using Regex.

3) I then create a new document using OpenXML, add a new mainDocumentPart and insert the string resulting from the substitution into this mainDocumentPart.

However, all formatting/styles etc. are lost in the new document.

I'm guessing I can copy and add the Style, Definitions, Comment parts etc.. individually to mimic the orginal document.

However is there a method using Open XML to duplicate a document allowing me to perform the substitutions on the new copy?

Thanks.