1.首先进行XWPFDocument类的实例化,该类的实例对应一个word文档

XWPFDocument MyDoc = new XWPFDocument();

2.设置页面的大小

CT_SectPr m_SectPr = new CT_SectPr();       //实例一个尺寸类的实例

m_SectPr.pgSz.w = 16838;        //设置宽度(这里是一个ulong类型)

m_SectPr.pgSz.h = 11906;        //设置高度(这里是一个ulong类型)

MyDoc.Document.body.sectPr = m_SectPr;          //设置页面的尺寸

上边的这一个横向的A4的页面大小,这里的单位比较特殊,用的是缇(Twip)这是一种和屏幕无关的长度单位,目的是为了让应用程序元素输出到不同设备时都能保持一致的计算方式。

换算关系:

1英寸=1440缇     1厘米=567缇     1磅=20缇     1像素=15缇

常用页面尺寸:(单位Twip)

A4(纵向):W=11906     H=16838

A4(纵向):W=16838     H=11906

A5 : W=8390    H=11906

A6 : W=5953    H=8390

如果不进行页面大小的设置,默认是纵向的A4大小。

3.创建段落

段落为XWPFParagraph类型的实例,段落由XWPFDocument实例的使用CreateParagraph()方法生成。

XWPFParagraph MyParagraph = MyDoc.CreateParagraph();

另外还有一种实例化XWPFParagraph类的创建段落的方法,效果和这个基本是一样的,但需要提供两个参数,比较麻烦。

该段落类有很多属性,用于设置与段落相关的内容。主要有以下几个方面

(1)边界相关的BorderXXXXX属性,该类属性用于获取或设置一个Borders枚举类型的值,该值用于设置边界的样式。

(2)FillBackgroundColor属性,背景填充的颜色。该属性获取或设置一个string类型的变量。该变量的含义是某个颜色的RGB值(在NPOI里所有的颜色都是以这种形式表示的)。例如设置为黑色则对应的代码如下:

MyParagraph.FillBackgroundColor = "#000000";

(3)Alignment属性,段落的对齐方式。该属性获取或设置一个ParagraphAlignment的枚举值。

(4)VerticalAlignment属性,文本垂直方向的对齐方式。该属性获取或设置一个TextAlignment 的枚举值。

(5)IndentationFirstLine属性,用于设置段落的首行缩进。该属性获取或设置一个int型变量。这个int值并不是缩进的字数,这里可以用一个函数计算缩进的距离。

//段落缩进   返回值为对应的缩进距离

//(fontname:文字类型名称   fontsize:文字大小    fontcount:缩进数目 fontstyle:文字类型(斜体、粗体...))

int Indentation(String fontname, int fontsize, int fontnum, FontStyle fontstyle)

{

Graphics gp = this.CreateGraphics();

gp.PageUnit = GraphicsUnit.Point;

SizeF size =gp.MeasureString("字", new Font(fontname,fontsize * 0.75F, fontstyle));

return (int)size.Width* fontnum * 10;

}

 
 

NPOI操作word文档1的更多相关文章

  1. iText操作word文档总结

    操作word文档的工具有很多,除了iText之外还有POI,但是POI擅长的功能是操作excel,虽然也可以操作word,但是能力有限,而且还有很多的bug,技术并不成熟,下面就重点介绍一种操作wor ...

  2. C#操作Word文档(加密、解密、对应书签插入分页符)

    原文:C#操作Word文档(加密.解密.对应书签插入分页符) 最近做一个项目,客户要求对已经生成好的RTF文件中的内容进行分页显示,由于之前对这方面没有什么了解,后来在网上也找了相关的资料,并结合自己 ...

  3. 利用Python操作Word文档【图片】

    利用Python操作Word文档

  4. Java文件操作系列[3]——使用jacob操作word文档

    Java对word文档的操作需要通过第三方组件实现,例如jacob.iText.POI和java2word等.jacob组件的功能最强大,可以操作word,Excel等格式的文件.该组件调用的的是操作 ...

  5. C#使用NPOI对Word文档进行导出操作的dll最新版2.5.1

    Npoi导出非模板 最近使用NPOI做了个导出Word文档的功能,因为之前都是导出Excel很方便(不用模板),所以导出Word也选用了Npoi(也没有用模板,

  6. C#中使用Spire.docx操作Word文档

    使用docx一段时间之后,一些地方还是不方便,然后就尝试寻找一种更加简便的方法. 之前有尝试过使用Npoi操作word表格,但是太烦人了,随后放弃,然后发现免费版本的spire不错,并且在莫种程度上比 ...

  7. 利用NPOI导出Word文档帮助类

    /// <summary> /// NPOI操作Word /// </summary> public class NpoiWordHelper { /// <summar ...

  8. 使用NPOI读取Word文档内容并进行修改

    前言 网上使用NPOI读取Word文件的例子现在也不少,本文就是参考网上大神们的例子进行修改以适应自己需求的. 参考博文 http://www.cnblogs.com/mahongbiao/p/376 ...

  9. QTP操作word文档

    QTP可以对word文档进行操作,这里最主要展示的是向word文档写入内容,并保存的功能. Option explicit Dim wordApp Set wordApp = createobject ...

随机推荐

  1. python学习之-软件开发的目录规范

    通常软件目录下有几个标准文件夹 软件主文件夹命名,通常都是大写(ATM_SHOPPING) ------------------------------------------------------ ...

  2. MySQL--关联更新

    ## 关联更新 ## 注意set条件在WHERE条件之前关联ON条件之后 UPDATE db1.tb001 AS T1 INNER JOIN db2.tb002 AS T2 ON T1.id=T2.i ...

  3. ZH奶酪:Python 中缀表达式转换后缀表达式

    实现一个可以处理加减乘数运算的中缀表达式转换后缀表达式的程序: 一个输入中缀表达式inOrder 一个输出池pool 一个缓存栈stack 从前至后逐字读取inOrder 首先看一下不包含括号的: ( ...

  4. /etc/inittab 学习

    1.文件内容 2.内容讲解 http://www.2cto.com/os/201108/98426.html init的进程号是1(ps -aux | less),从这一点就能看出,init进程是系统 ...

  5. Linux下远程备份、上传工程,重启服务器

    Linux下远程备份.上传工程,重启服务器 Linux服务器实现远程,原项目的备份.删除,新项目上传,以及远程重启服务器!分成一个主shell调用三个shell文件步骤完成.mainsh.sh一次按顺 ...

  6. asm数据文件迁移(os–>asm)

    --添加测试表空间 SQL> create tablespace xff datafile '/u01/oradata/xifenfei.dbf' size 10m autoextend on ...

  7. Mongodb基础用法及查询操作

    插入多条测试数据> for(i=1;i<=1000;i++){... db.blog.insert({"title":i,"content":&qu ...

  8. ML(4): 决策树分类

    决策树(Decision Tree)是用于分类和预测的主要技术,它着眼于从一组无规则的事例推理出决策树表示形式的分类规则,采用自顶向下的递归方式,在决策树的内部节点进行属性值的比较,并根据不同属性判断 ...

  9. HA 部署wordpress

    前提: 1.保证免密认证ssh 2.NTP时间是否同步: 3.保证防火墙,selinux关闭: 4.用户名互相能够解析:在hosts文件设置: 环境: 系统:centos6.8和centos7.2 I ...

  10. bzoj1085 骑士精神

    Description 在一个5×5的棋盘上有12个白色的骑士和12个黑色的骑士, 且有一个空位.在任何时候一个骑士都能按照骑士的走法(它可以走到和它横坐标相差为1,纵坐标相差为2或者横坐标相差为2, ...