NPOI导出word文档中插入公式总结

该文章详细介绍了如何使用OpenXML库中的XWPFOMath及相关类在Java中创建复杂的数学公式,包括上标、下标、除法、积分、积分类和根号等操作,并提供了一组实用的方法封装,便于在项目中构建数学表达式。

1. XWPFOMath类

XWPFDocument doc = new XWPFDocument();
//创建新行
XWPFParagraph p = doc.CreateParagraph();
//创建空的公式
XWPFOMath math = p.CreateOMath();

通过XWPFParagraph的扩展方法创建

方法名 备注
CreateAcc(); 创建XWPFAcc类,实现字符在文字上面的类
CreateF(); 创建XWPFF类,实现除法相关的类
CreateNary(); 创建XWPFNary类,实现积分相关的内容
CreateRad(); 创建XWPFRad类,实现根号的操作
CreateRun(); 创建XWPFSharedRun类,实现添加内容操作
CreateSSub(); 创建XWPFSSub类,实现构件下标操作
CreateSSup(); 创建XWPFSSup类,实现上标操作

2. XWPFAcc类

定 义:上标类

AccPr属性

控制上标的内容

代码:

下标的内容通过“Element.CreateRun().SetText(“需要写入的内容”);”来添加

var acc = math.CreateAcc();
acc.AccPr = "i";
acc.Element.CreateRun().SetText("X");

[图片]

3. XWPFF类

定义:创建除法符号

FractionType属性:设置除线的形式是个枚举值

在这里插入图片描述

Denominator属性:设置分母内容

Numerator属性:设置分子内容

代码

XWPFF f = math.CreateF();
f.FractionType = ST_FType.skw;
f.Denominator.CreateRun().SetText("n");
var nary = f.Numerator.CreateNary().SetSumm();
nary.Superscript.CreateRun().SetText("n");
nary.Subscript.CreateRun().SetText("i=1"); 
var ssub = nary.Element.CreateSSub();
ssub.Element.CreateRun().SetText("X");
ssub.Subscript.CreateRun().SetText("i");

在这里插入图片描述

4. XWPFNary类

定义:积分类( ⋀ 、∫、∑、⋃符号)。通过方法来添加

        //
        // 摘要:
        //     Sets ⋀ char
        public XWPFNary SetAnd();
        //
        // 摘要:
        //     Sets ∫ char
        public XWPFNary SetIntegral();
        //
        // 摘要:
        //     Sets ∑ char
        public XWPFNary SetSumm();
        //
        // 摘要:
        //     Sets ⋃ char
        public XWPFNary SetUnion();
       

Superscript属性

添加符号上字符

Subscript属性

定义:添加符号下字符

代码:

XWPFNary nary = f.Numerator.CreateNary().SetSumm();
nary.Superscript.CreateRun().SetText("n");
nary.Subscript.CreateRun().SetText("i=1");
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

baobao熊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值