zoukankan      html  css  js  c++  java
  • C# VSTO 在Word中将 EQ域、EQ公式域 转为图片

    C# VSTO  Word EQ域 EQ公式域 转为 图片

    C# VSTO  Word EQ域 EQ公式 转为 图片

    C# VSTO  Word EQ域 公式域 转为 图片

    我们知道我们正常插入的公式为Office公式,操作方式为:

    在Word里面有一种特殊的东西叫“”,他可以是,目录,公式,时间.....

    这里是创建eq域的方法

    需求:将eq域转为图片

    代码:

           ///// <summary>
            /////公式域保存为图片
            ///// </summary>
            public static void SaveImg(Document Doc)
            {
                foreach (Microsoft.Office.Interop.Word.Field fld in Doc.Fields)
                {
                    //这里可以得到域的类型是不是eq域在进行下面的操作,不然所以的都转换了
                    //int sta = fld.Code.Start;
                    //var aa = fld.Code;
    //域的左右范围+1才能转为图片 var nRange = Doc.Range(fld.Code.Start - 1, fld.Code.Start + 1); //将图片去除白边 var img = QueItemRange.CutImageWhitePart(nRange.ToImageStream()); string path = Path.GetFullPath(Path.GetRandomFileName().Replace(".", "") + ".png"); img.Save(path, System.Drawing.Imaging.ImageFormat.Png); //插入到文档中 var ii = nRange.AddPicture(path); //段落,图片比文字高80%(这里没有调好,可以直接调) //var ph = fld.Code.Paragraphs.First.LineSpacing*1.8; //var ip = ii.Height/ ph; //暂定写死图片大小 ii.ScaleHeight = 14; ii.ScaleWidth = 16; //删除域 fld.Code.Text = ""; File.Delete(path); } }

    备注:

    图片去除白边(QueItemRange.CutImageWhitePart)可以看我的另外的博客 https://www.cnblogs.com/ping9719/p/11416176.html

    测试 MS Office 和 WPS Office 都ok

    ms会完全没有问题,

    但是wps在后续使用中可能Range会有一定的变化,需要使用者注意一下。

    完成

    如有问题请联系QQ: var d=["1","2","3","4","5","6","7","8","9"]; var pass=d[8]+d[6]+d[0]+d[8]+d[2]+d[0]+d[4]+d[3]+d[2];
  • 相关阅读:
    UVA 10600 ACM Contest and Blackout(次小生成树)
    UVA 10369
    UVA Live 6437 Power Plant 最小生成树
    UVA 1151 Buy or Build MST(最小生成树)
    UVA 1395 Slim Span 最小生成树
    POJ 1679 The Unique MST 次小生成树
    POJ 1789 Truck History 最小生成树
    POJ 1258 Agri-Net 最小生成树
    ubuntu 用法
    ubuntu 搭建ftp服务器,可以通过浏览器访问,filezilla上传文件等功能
  • 原文地址:https://www.cnblogs.com/ping9719/p/15205267.html
Copyright © 2011-2022 走看看