要用程序把分式\指数等数学公式写入word,有开源的代码吗?
备注:word中的公式有多种,一种是"MathType Equation",一种是word2007后自带的公式.
我想要的最好是word2007后自带的公式.word 

解决方案 »

  1.   

    VBA是可以的,C#你引用word组件后,创建Application,参考vba代码,应该也可以的Sub 宏1()
    '
    ' 宏1 宏
    '
    '
        Application.Templates( _
            "C:\Users\zhangsan\AppData\Roaming\Microsoft\Document Building Blocks\2052\14\Built-In Building Blocks.dotx" _
            ).BuildingBlockEntries("二次公式").Insert Where:=Selection.Range, RichText:= _
            True
    End Sub上面vba代码执行几次后的效果
      

  2.   

    不引用word组件,直接用c#写入可以吗?没代码,提供个思路也好啊!
      

  3.   


    为什么不直接引用word组件而要第三方插件呢?
    你既然要在word里插入公式,说明机器上一定安装了word,引用word组件理所当然啊
      

  4.   

    C#操作Word完全方法 
      

  5.   

    数学公式在线显示插件MathPlayer2.1版
    http://download.csdn.net/download/kleose/3937132
      

  6.   


    其它组件你不是一样不会。还是word简单点,可以再VBA中录制宏,然后自己翻译成C#代码。
      

  7.   

    这个要求貌似比较难办,微软是一个不太喜欢刻意宣扬自己技术的公司,很多东西虽然他有,但是都是非公开的玩意我个人认为可能先抛开office,直接从mathML,latex这类标准方案入手,先从正常行业标准实现,然后在去找有没有在office里实现mathml的办法哦,顺带搜索了一下,还的确是有,不过是基于office open xml的解法叫做Office MathML (OMML),office2010后支持这用OMML表达为:
    <m:oMathPara><!-- mathematical block container used as a paragraph -->
      <m:oMath><!-- mathematical inline formula -->
        <m:f><!-- a fraction -->
          <m:num><m:r><m:t>π</m:t></m:r></m:num><!-- numerator containing a single run of text -->
          <m:den><m:r><m:t>2</m:t></m:r></m:den><!-- denominator containing a single run of text -->
        </m:f>
      </m:oMath>
    </m:oMathPara>
      

  8.   

    http://stackoverflow.com/questions/10993621/openxml-sdk-and-mathml这里有个回答,大体可以把mathML的东西转换成OMML后插入docx模版的对应位置上
      

  9.   


    C:\Users\zhangsan\AppData\Roaming\Microsoft\Document Building Blocks\2052\14\Built-In Buildi
    上面路径要改成你自己的实际路径,我是win7 32位系统,Office2010