6.2.0在线编辑:GrapeCity Documents for Word (GcWord) Crack

GrapeCity Word 文档 (GcWord)

支持 Office Math 函数以及转换为 MathML

GcWord 现在支持在 Word 文档中创建和编辑 Office Math 内容。GcWord 中的 OMath 支持包括完整的 API,可处理科学、数学和通用 Word 文档中广泛使用的数学符号、公式和方程。以下是通过 OMath 支持引入的新 API 的主要亮点 -

  • 用于在 GcWord 中表示 Office Math 内容的两个主要类是OMathParagraphOMathOMathParagraph表示包含 Office Math 内容的段落,而OMath表示内联 Office Math 区域,可以包含在 OMathParagraph 或常规段落中。
  • 提供专门的类(例如OMathFunctionOMathEquationArrayOMathRadical等)来表示 OMath 区域内的各种数学结构。这些类派生自公共抽象OMathStruct基础。
  • 新的 RangeBase 属性提供对 Office Math 内容的访问:OMathParagraphsOMathsOMathStructsOMathElementsOMathMatrixRows
  • 为了轻松添加 MS Word 支持的内置方程,在RangeBaseOMathParagraphOMathOMathElement类上提供了方便的 Add/Insert 方法,它们接受标识所需方程的OMathBuiltInEquation枚举值。
  • 包含一个实用程序MathMLConverter类,以便在 GcWord OMath 内容和 MathML 之间轻松转换。

以下代码使用OMath类及其函数将方程添加到 Word 文件中:

var sampleDoc = new GcWordDocument();
var om = sampleDoc.Body.AddParagraph().AddOMathParagraph().AddOMath();

om.AddRun("Γ").Font.Italic = false;
om.AddDelimiter(new string[] { "z" });
om.AddRun("=");

var nary = om.AddNary("", "0", "∞", "∫");
nary.Base.AddSuperscript("t", "z-1");
nary.Base.AddSuperscript("e", "-t");
nary.Base.AddRun("dt");
om.AddRun("=");

var frac = om.AddFraction();
var superscript = frac.Numerator.AddSuperscript("e", "-");
superscript.Superscript.AddRun("γ").Font.Bidi = true; //w:cs was used
superscript.Superscript.AddRun("z");
frac.Denominator.AddRun("z");

nary = om.AddNary("", "k=1", "∞", "∏");
superscript = nary.Base.AddSuperscript("", "-1");
var delimiter = superscript.Base.AddDelimiter();
var item = delimiter.Items.Add();
item.AddRun("1+");
item.AddFraction("z", "k", null);

superscript = nary.Base.AddSuperscript("e", "z");
superscript.Superscript.AddRun("/").OMathFormat.IsLiteral = true; //m:lit used.
superscript.Superscript.AddRun("k");

om.AddRun(",  γ≈0.577216");

sampleDoc.Save("MathEquation.docx");

奥马斯

新的帮助程序“Add<content object>(..)”方法可将内容添加到 Word 文档。

到目前为止,可以通过一种或多种方式在 Word 文档中添加内容对象。例如,可以通过段落创建构造函数调用 - doc.Body.Paragraphs.Add(“text“) 或使用 paragraph.GetRange().Runs.Add(…) 添加段落的“runs”并创建这次通话之前的一段话。然而,在 v6.2 版本中,现在可以使用新的“AddRun(..)”方法直接在段落元素上创建连续句。

同样,GcWord 为 Word 文档中的每种内容添加了“ Add < content object>(..)”方法,以便它们可以直接添加到其父对象中,从而使代码更短、更高效。现在可以使用新的 Helper 方法将每个对象直接添加到 Word 文档中的不同部分或内容对象:

  • 桌子
  • 段落
  • 内容控制
  • 简单字段
  • 超链接
  • 双向覆盖
  • OM数学段落
  • 奥马斯
  • 跑步
  • 脚注
  • 尾注
  • 复杂场
  • 团体形态
  • 形状
  • 图片
  • 墨形

看一下下面的代码,它使用新方法“ AddRun(..) ”将段落运行添加到段落中:

GcWordDocument doc = new GcWordDocument();
            
// add paragraph with default formatted text
var p = doc.Body.AddParagraph("text1");
            
// add another text into the paragraph formatted with "Heading1" style
// previously code should look like: p.GetRange().Runs.Add("text2", doc.Styles[BuiltInStyleId.Heading1]);
// now the code is shorter and more clear what content can be added into the object
 p.AddRun("text2", doc.Styles[BuiltInStyleId.Heading1]);

查看以下资源以查看新支持的帮助器方法的完整列表。

GcWord 模板中的转义模板标签

如果要阻止数据模板引擎处理特定的数据模板标记(即,在模板扩展后在文档中逐字引用它),请在标记的左双大括号之前插入反斜杠。

以下代码片段显示了如何转义否则会打印数据值的标签:

var dsPoint = new string[] { "2.2", "3.3", "4.4" };

var doc = new GcWordDocument();
doc.Body.Paragraphs.Add(@"\\{{dsPoint.value}:todouble():format(0.#%)}");
doc.DataTemplate.DataSources.Add("dsPoint", dsPoint);
doc.DataTemplate.Process(CultureInfo.GetCultureInfo("en-US"));
doc.Save("DocumentWithDoubleSlash.docx");
复制

逃生模板标签

此外,要在模板标记之前使用反斜杠而不禁用模板处理,GcWord 允许您插入两个或多个反斜杠,具体取决于需要的数量。处理模板标签时,它将从前置反斜杠中删除一个反斜杠。

以下代码向模板语法添加双斜杠。处理模板语法时,这将在生成的 Word 文件中添加一个反斜杠:

var dsPoint = new string[] { "2.2", "3.3", "4.4" };

var doc = new GcWordDocument();
doc.Body.Paragraphs.Add(@"\\{{dsPoint.value}:todouble():format(0.#%)}");
doc.DataTemplate.DataSources.Add("dsPoint", dsPoint);
doc.DataTemplate.Process(CultureInfo.GetCultureInfo("en-US"));
doc.Save("DocumentWithDoubleSlash.docx");
复制

在模板语法中添加双斜杠

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值