加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

C# Word转为多种格式文件(Word转XPS/SVG/EMF/EPUB/TIFF)

发布时间:2020-12-16 01:06:14 所属栏目:百科 来源:网络整理
导读:一款有着强大的文档转换功能的工具,无论何时何地都会是现代办公环境极为需要的。在本篇文章中,将继续介绍关于Word文档的转换功能(Word转XPS/SVG/EMF/EPUB/TIFF)希望方法中的代码能为各位开发者们提供一定的参考价值。 PS :更多Word转换功能可以参阅这两

一款有着强大的文档转换功能的工具,无论何时何地都会是现代办公环境极为需要的。在本篇文章中,将继续介绍关于Word文档的转换功能(Word转XPS/SVG/EMF/EPUB/TIFF)希望方法中的代码能为各位开发者们提供一定的参考价值。

PS:更多Word转换功能可以参阅这两篇文章

  • Word转HTML/XML/PDF/IMAGE
  • Word转TXT

使用工具Free Spire.Doc for .NET

使用方法下载安装该控件后,在VS控制台应用程序中添加引用Spire.Doc.dll文件(dll文件可在该安装文件夹下Bin中获取)

1. Word转XPS

using Spire.Doc;
 System;

namespace WordtoXPS_Doc
{
    class Program
    {
        static void Main(string[] args)
        {
            //初始化String类,元素为需要转换的Word文档
            String file = "sample.docx";
            创建一个Document类对象,加载sample文件
            Document doc = new Document(file);
            将Word文件保存为XPS,并运行生成的文档
            doc.SaveToFile(Word2XPS.xps,FileFormat.XPS);
            System.Diagnostics.Process.Start();
        }
    }
}

调试运行该项目生成文档,如下图:

2.??WordSVG

 Spire.Doc;

 WordtoSVG_Doc
{
    实例化Document类,并加载Word sample
            Document doc =  Document();
            doc.LoadFromFile(@"C:UsersAdministratorDesktopsample.docx);
            保存为svg格式
            doc.SaveToFile(result.svg

3. WordEmf

 System.Drawing;
 System.Drawing.Imaging;

 WordtoEmf_Doc
{
    实例化一个Document类,并加载Word sample
            Document doc = 调用方法 SaveToImages()将Word第一页转为image并保存为Emf格式
            System.Drawing.Image image = doc.SaveToImages(0WordtoEmf.emf

4.??WordEpub

 WordtoEPUB
{
     Epub
    {
        实例化Document类,并加载Word sample
            Document document =  Document();
            document.LoadFromFile();

            保存为Epub格式,并运行生成的文档
            document.SaveToFile(ToEpub.epub);
        }
    }
}

5.?WordWord XML

 WordtoWordXML_Doc
{
    创建一个Document类对象并加载Word sample
            Document doc = 调用方法SaveToFile()保存Word为Word Xml
            doc.SaveToFile(WordToWordXML.xml

6.? ?WordTiff

 Spire.Doc.Documents;
 System;
 convert_word_to_tiff
{
    实例化一个Document类,加载Word sample
            Document document = new Document(调用方法JoinTiffImages()将Word保存为tiff格式,并运行生成的文档
            JoinTiffImages(SaveAsImage(document),result.tiff);
        }
        自定义方法SaveAsImage()将Word文档保存为图像
        private static Image[] SaveAsImage(Document document)
        {
            Image[] images = document.SaveToImages(ImageType.Bitmap);
            return images;
        }
        static ImageCodecInfo GetEncoderInfo( mimeType)
        {
            ImageCodecInfo[] encoders = ImageCodecInfo.GetImageEncoders();
            for (int j = 0; j < encoders.Length; j++)
            {
                if (encoders[j].MimeType == mimeType)
                     encoders[j];
            }
            throw new Exception(mimeType +  mime type not found in ImageCodecInfo自定义方法JoinTiffImages()将Word保存为TIFF图片格式(使用指定编码器和图像编码参数)
        public void JoinTiffImages(Image[] images, outFile,EncoderValue compressEncoder)
        {            
            System.Drawing.Imaging.Encoder enc = System.Drawing.Imaging.Encoder.SaveFlag;
            EncoderParameters ep = new EncoderParameters(2);
            ep.Param[0] = new EncoderParameter(enc,(long)EncoderValue.MultiFrame);
            ep.Param[1] = new EncoderParameter(System.Drawing.Imaging.Encoder.Compression,1)">)compressEncoder);
            Image pages = images[];
            int frame = ;
            ImageCodecInfo info = GetEncoderInfo(image/tiffforeach (Image img in images)
            {
                if (frame == )
                {
                    pages = img;                   
                    pages.Save(outFile,info,ep);
                }

                else
                {
                    ep.Param[)EncoderValue.FrameDimensionPage);

                    pages.SaveAdd(img,ep);
                }
                if (frame == images.Length - 1)
                {                    
                    ep.Param[)EncoderValue.Flush);
                    pages.SaveAdd(ep);
                }
                frame++;
            }
        }
    }
}

以上是本次关于Word转成其他格式文件的具体描述,方法中的代码供参考。欢迎转载(转载请注明出处)

?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读