Convert HTML to RTF string in C# and .NET


Complete code

using System;
using System.IO;
using SautinSoft;
using static SautinSoft.HtmlToRtf;

namespace Sample
{
    class Test
    {

        static void Main(string[] args)
        {
			// Get your free 100-day key here:   
            // https://sautinsoft.com/start-for-free/
	
            // Convert HTML string to RTF string.
            // If you need more information about "HTML to RTF .Net" 
            // Email us at: support@sautinsoft.com.
            ConvertHtmlToRtfString();
        }

        public static void ConvertHtmlToRtfString()
        {
            SautinSoft.HtmlToRtf h = new SautinSoft.HtmlToRtf();
            HtmlConvertOptions opt = new HtmlConvertOptions();
            opt.OutputFormat = HtmlToRtf.OutputFormat.Rtf;

            string inpFile = @"..\..\..\pic.html";
            string outFile = "Result.rtf";

            // Read our HTML file a string.
            string htmlString = File.ReadAllText(inpFile);
            byte[] rtfBytes = null;

            // Specify the 'BaseURL' property that component can find the full path to images, like a: <img src="..\pict.png" and
            // to external css, like a:  <link rel="stylesheet" href="/css/style.css">.
            opt.BaseURL = Path.GetDirectoryName(Path.GetFullPath(inpFile));

            var htmlBytes = System.Text.Encoding.UTF8.GetBytes(htmlString);

            if (h.Convert(htmlBytes, out rtfBytes, opt))
            {
                // Open the result for demonstration purposes.
                File.WriteAllBytes(outFile, rtfBytes);
                System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo(outFile) { UseShellExecute = true });
            }
        }
    }
}

Download

Option Infer On

Imports System
Imports System.IO
Imports SautinSoft
Imports SautinSoft.HtmlToRtf

Namespace Sample
	Friend Class Test

		Shared Sub Main(ByVal args() As String)
			' Get your free 100-day key here:   
            ' https://sautinsoft.com/start-for-free/
	
			' Convert HTML string to RTF string.
			' If you need more information about "HTML to RTF .Net" 
			' Email us at: support@sautinsoft.com.
			ConvertHtmlToRtfString()
		End Sub

		Public Shared Sub ConvertHtmlToRtfString()
			Dim h As New SautinSoft.HtmlToRtf()
			Dim opt As New HtmlConvertOptions()
			opt.OutputFormat = HtmlToRtf.OutputFormat.Rtf

			Dim inpFile As String = "..\..\..\pic.html"
			Dim outFile As String = "Result.rtf"

			' Read our HTML file a string.
			Dim htmlString As String = File.ReadAllText(inpFile)
			Dim rtfBytes() As Byte = Nothing

			' Specify the 'BaseURL' property that component can find the full path to images, like a: <img src="..\pict.png" and
			' to external css, like a:  <link rel="stylesheet" href="/css/style.css">.
			opt.BaseURL = Path.GetDirectoryName(Path.GetFullPath(inpFile))

			Dim htmlBytes = System.Text.Encoding.UTF8.GetBytes(htmlString)

			If h.Convert(htmlBytes, rtfBytes, opt) Then
				' Open the result for demonstration purposes.
				File.WriteAllBytes(outFile, rtfBytes)
				System.Diagnostics.Process.Start(New System.Diagnostics.ProcessStartInfo(outFile) With {.UseShellExecute = True})
			End If
		End Sub
	End Class
End Namespace

Download


If you need a new code example or have a question: email us at support@sautinsoft.com or ask at Online Chat (right-bottom corner of this page) or use the Form below:



Questions and suggestions from you are always welcome!

We are developing .Net components since 2002. We know PDF, DOCX, RTF, HTML, XLSX and Images formats. If you need any assistance with creating, modifying or converting documents in various formats, we can help you. We will write any code example for you absolutely free.