在C#中,需要处理Office Word文档时,由于MsOffice Com的版本局限性,所以选择不与本机MsOffice安装与否或安装版本相关的软件,以便软件或使用时的通用性与版权限制,特别是对于国内好多用户选择WPS来处理Office文档。常用开源软件有NPOIDocX。还有受限的Spire免费版也可以处理。

DocX是一个.NET库,允许开发人员以简单直观的方式处理Word 2007/2010/2013文件。 DocX是快速,轻量级,最好的是它不需要安装Microsoft Word或Office。DocX组件不仅可以完成对文档的一般要求,例如创建文档,创建表格和文本,并且还可以创建图形报表。DocX使创建和操作文档成为一个简单的任务。

它不使用COM库,也不需要安装Microsoft Office。在使用DocX组件时,你需要安装 .NET框架4.0 和 Visual Studio 2010或更高版本。

DocX的主要特点:

(1).在文档中插入,删除或替换文本。所有标准文本格式都可用。 字体{系列,大小,颜色},粗体,斜体,下划线,删除线,脚本{子,超级},突出显示。

(2).段落属性显示。方向LeftToRight或RightToLeft;缩进;比对。

(3).DocX也支持:图片,超链接,表,页眉和页脚,自定义属性。

实际上,DocX是Xceed的.Net下的收费软件Xceed Word的简化版。在1.1版之前,其命名空间是Novacode。到1.1时,更新较大,命名空间改为Xceed,1.1时只有Xceed.Words.NET,后来增加了Xceed.Document.NET。

在目前网上的大多数DocX的应用介绍与范例代码中,大部分都是1.1之前的内容。所以,你如果选择的是比较新的版本,就要注意。而且,可能是因为是免费版本吧,开发团队对于其中有些Bug没处理到位,比如插入图片AppendPicture在1.0.0.22中,是没有问题的,而在1.0.0.15时是有问题的,在更新到1.1时,也能够处理,但在1.5中同样代码却不出来,所以,你如果碰到这种情况,不妨多试试几个版本,又如页眉页脚的奇偶页,1.0.0.22是奇偶页是相同的,这个Bug在1.1中又修改过来了。

我是在NPOI处理Word文档时,遇到在页眉页脚中插入表格总是弄不了(后来解决了),才转向用DocX来处理,但又遇到了插入图片失败。在网上搜索或代码处理上花了很多时间(当然其中有我自己水平太低的原因),在开源官网的评论与Bug评论贴中才想到版本问题,这才了解了上述原因。

所以,我以后在贴出代码时,会将组件版本列出。

以下是各版本重大更新时命名空间及存在问题:

//Version 1.4.1.0(本版本起至目前1.5.0.0止,分为两个命名空间):发现问题:图片插入不成功。
//using Xceed.Words.NET;
//using Xceed.Document.NET;
//Version 1.1.0.0 - 1.3.0.0(本版本起更改命名空间),建议使用版本1.3.0,测试到目前为止包括图片等基本功能正常。故以后若没有标示版本,就以1.3.0版本为准。
using Xceed.Words.NET;
//Version 1.0.0.22及之前:版本太旧,功能受限,我测试也不全。
//using Novacode;

最新文章

  1. 低信噪比的HTML5优化
  2. sql insert into select语句写法-将查询结果直接插入到表中
  3. AngularJs angular.forEach、angular.extend
  4. for循环求交集
  5. 用form表单实现Ajax---post提交
  6. Largest Number || LeetCode
  7. ASP.NET 开发笔记1
  8. oracle添加日志表
  9. cf 320B
  10. Eclipse Key Shortcuts for Greater Developers Productivity--reference
  11. linux shell获取时间
  12. 【 bzoj4537】HNOI2016 最小公倍数
  13. python之路--day8---day9--两日内容
  14. MySQL数据库基础学习
  15. vue学习笔记——路由
  16. java画流程图【思路】
  17. JavaScript初学者建议:不要去管浏览器兼容
  18. ZOJ3703 Happy Programming Contest 2017-04-06 23:33 61人阅读 评论(0) 收藏
  19. 转:XSS知识大总结
  20. Http请求响应模型

热门文章

  1. 【一起学源码-微服务】Hystrix 源码二:Hystrix核心流程:Hystix非降级逻辑流程梳理
  2. ES 服务器 索引、类型仓库基类 BaseESStorage
  3. Qt Installer Framework翻译(3-4)
  4. kafka(一)-为什么选择kafka
  5. selenium之窗口滚动
  6. Windows 7原版映像中添加usb3.0驱动
  7. 个人第四次作业Alpha2版本测试~顾毓
  8. 【转】在VS2010上使用C#调用非托管C++生成的DLL文件(图文讲解)
  9. Python3-提高效率的方法
  10. postman的简单介绍及运用