zoukankan      html  css  js  c++  java
  • 如何在程序中给word文档加上标和下标

    如何在程序中给word文档加上标和下标

     

    上标或下标是一个小于普通行格式的数字,图形,标志或者指示通常它的设置与行相比偏上或偏下。下标通常显示于或者低于基准线,而上标则高于。上标和下标通常被用于表达公式,算数表达式以及化学中的化合物和同位素,当然还有很多其他的用途。在Microsoft word中,我们可以使用下列字体设置来构成上标/下标。

     

    在程序中处理Microsoft word一直很困难。但是,有了FreeSpire.Doc的帮助,那就变得很简单因为我们不需要再安装Microsoft word了。我的程序的问题是需要在编程中自动创建文档并且里面有许多算数表达式。所以需要用到这个组件来实现。


    第一步:创建一个控制台程序并且包含以下Spire.Doc 程序集

     

    using Spire.Doc;
    using Spire.Doc.Documents;

     

    第二步:初始化文档对象

     

    Spire.Doc程序库包含核心Document类,并用它来创建文档。添加下列代码来创建。

    Document doc = new Document();

     

    第三步:添加区段

     

    一个文档包括一个或多个区段,所以在用Spire添加内容之前我必须先添加区段。

    Section sec = doc.AddSection();

     

    第四步:添加段落

     

    Paragraph para = sec.AddParagraph();
    para.AppendText(
    "a");

     

    第五步:添加上标和下标文本

     

    AppendText方法返回TextRange对象,通过它我们都可以实现像在word中设置字体,字号,字型效果,字符间距以及OpenType属性的操作。所以现在我可以用以下代码很容易做出上标和下标文本来。

    TextRange tr = para.AppendText("2");
    tr.CharacterFormat.SubSuperScript = SubSuperScript.SuperScript;

      

    在运行了以下的完整代码后,我们可以看到如下结果:

    Document doc = new Document();
    Section sec = doc.AddSection();
    Paragraph para = sec.AddParagraph();
    para.AppendText("a");
    TextRange tr = para.AppendText("2");
    tr.CharacterFormat.SubSuperScript = SubSuperScript.SuperScript;
    para.AppendText("+");
    para.AppendText("b");
    tr = para.AppendText("2");
    tr.CharacterFormat.SubSuperScript = SubSuperScript.SuperScript;
    para.AppendText("=");
    para.AppendText("c");
    tr = para.AppendText("2");
    tr.CharacterFormat.SubSuperScript = SubSuperScript.SuperScript;
    doc.SaveToFile("result.docx");

    结论

    使用Spire.Doc可以很容易地在C#中处理MicrosoftWord文档,这只是我用程序来处理生成word文档的一个简单小例子。

     

     

     



  • 相关阅读:
    【原创翻译】给前端小白的现代JavaScript工作流程详解 | Modern JavaScript Explained For Dinosaurs
    JavaScript音频可视化
    CSS两种布局记录
    飞桨|PaddlePaddle YoloV3学习笔记
    飞桨|PaddlePaddle第二周学习笔记|卷积神经网络、计算机视觉相关知识
    求所有不重复路径, Unique Paths | 换硬币问题 LeetCode题解(四)
    最大子数组,Maximum Subarray| Best Time to Buy and Sell Stock, LeetCode题解(三)
    合并k个有序链表, LeetCode题解(二)
    TwoSum, ThreeSum, 数字链表相加, LeetCode题解(一)
    最长公共子序列、最长重复子串
  • 原文地址:https://www.cnblogs.com/Yesi/p/4235335.html
Copyright © 2011-2022 走看看