• C#/VB.NET 将RTF转为HTML


    RTF文档即富文本格式(Rich Text Format)的文档。我们在处理文件时,遇到需要对文档格式进行转换时,可以将RTF转为其他格式,如转为DOCX/DOC、PDF或者HTML,以满足程序设计需要。网上有开发者提供了可实现RTF转为HTML格式的方法,但是方法可能不一定适用于所有程序,比如可能出现乱码、文字错位、重叠等现象。本文提供另外一种可实现转换的方法。经过测试,转换后的字体、文档排版等效果都还不错。而且仅仅需要三行代码就可以转换。下面,是详细方法及步骤。

    一、引入类库工具

    本次测试时,在程序中引入Free Spire.Doc for .NET。可通过以下方法引用 Spire.Doc.dll文件:

    方法1:将 Free Spire.Doc for .NET下载到本地,解压,安装。安装完成后,找到安装路径下BIN文件夹中的 Spire.Doc.dll。然后在Visual Studio中打开“解决方案资源管理器”,鼠标右键点击“引用”,“添加引用”,将本地路径BIN文件夹下的dll文件添加引用至程序。

    方法2:通过 NuGet 安装。可通过以下2种方法安装:

    (1)可以在Visual Studio中打开“解决方案资源管理器”,鼠标右键点击“引用”,“管理NuGet包”,然后搜索“Free Spire.Doc”,点击“安装”。等待程序安装完成。

    (2)将以下内容复制到PM控制台安装。

    Install-Package FreeSpire.Doc -Version 10.2.0

    二、RTF转HTML

    转换时,通过以下三行代码步骤即可:

    • 创建Document类的对象。
    • 调用Document.LoadFromFile(string fileName)方法加载RTF文档。
    • 通过Document.SaveToFile(string fileName, FileFormat fileFormat)方法保存为HTML格式的文件到指定路径。

    完整代码如下:

    C#

    复制代码
    using Spire.Doc;
    
    namespace RTFtoHTML
    {
        class Program
        {
            static void Main(string[] args)
            {
                //创建Document类的对象
                Document document = new Document();
    
                //加载RTF文档
                document.LoadFromFile("sample.rtf");
    
                //保存为HTML文件
                document.SaveToFile("RTFtoHTML.html", FileFormat.Html);
            }
        }
    }
    复制代码

    vb.net

    复制代码
    Imports Spire.Doc
    
    Namespace RTFtoHTML
        Class Program
            Private Shared Sub Main(args As String())
                '创建Document类的对象
                Dim document As New Document()
    
                '加载RTF文档
                document.LoadFromFile("sample.rtf")
    
                '保存为HTML文件
                document.SaveToFile("RTFtoHTML.html", FileFormat.Html)
            End Sub
        End Class
    End Namespace
    复制代码

    转换效果

    转换前:

    转换后:

     

    注:

    •  测试代码中的文件路径为程序debug路径,文件路径可自定义为其他路径。
    •  本次测试使用免费版,该库可免费商用。

     

    —END—

     

  • 相关阅读:
    深入理解netty
    js中将字符串转换为正则
    Vue中引入一个异步组件
    基于大数据的动漫影视可视化分析系统
    洛谷C++简单题小练习day11—字母转换,分可乐两个小程序
    存储服务器如何打造容灾集群系统?
    前端异步+token下载文件
    FT2004(D2000)开发实战之在线开发OpenCV实例
    评价类——熵权法(Entropy Weight Method, EWM),完全客观评价
    变量声明与触发器
  • 原文地址:https://www.cnblogs.com/Yesi/p/16147713.html