Convert RTF string to HTML string in C# and .NET
Complete code
using System;
using System.IO;
using System.Text;
namespace Sample
{
class sample
{
static void Main(string[] args)
{
// Read our RTF file a string.
string inpFile = @"..\..\example.rtf";
string rtfString = File.ReadAllText(inpFile);
// We'll use the file only for the demonstration.
string outFile = @"Result.html";
string htmlString = String.Empty;
SautinSoft.RtfToHtml r = new SautinSoft.RtfToHtml();
// Specify some properties for output HTML document.
r.OutputFormat = SautinSoft.RtfToHtml.eOutputFormat.HTML_5;
r.Encoding = SautinSoft.RtfToHtml.eEncoding.UTF_8;
// Imagefolder must already exist.
r.ImageStyle.ImageFolder = System.Environment.CurrentDirectory;
// Subfolder for images will be created by the component.
r.ImageStyle.ImageSubFolder = "image.files";
// A template name for images.
r.ImageStyle.ImageFileName = "picture";
// false - store images as files on HDD,
// true - store images inside HTML document using base64.
r.ImageStyle.IncludeImageInHtml = false;
try
{
r.OpenRtf(rtfString);
// Here we've got the HTML document as string.
r.ToHtml(out htmlString);
// Save our HTML into file and open it for the demonstration purposes.
File.WriteAllText(outFile, htmlString);
System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo(outFile)
{ UseShellExecute = true });
}
catch (Exception e)
{
Console.WriteLine($"Error: {e.Message}");
Console.WriteLine("Press any key ...");
Console.ReadKey();
}
}
}
}
Imports System
Imports System.IO
Imports System.Text
Namespace Sample
Friend Class sample
Shared Sub Main(ByVal args() As String)
' Read our RTF file a string.
Dim inpFile As String = "..\..\example.rtf"
Dim rtfString As String = File.ReadAllText(inpFile)
' We'll use the file only for the demonstration.
Dim outFile As String = "Result.html"
Dim htmlString As String = String.Empty
Dim r As New SautinSoft.RtfToHtml()
' Specify some properties for output HTML document.
r.OutputFormat = SautinSoft.RtfToHtml.eOutputFormat.HTML_5
r.Encoding = SautinSoft.RtfToHtml.eEncoding.UTF_8
' Imagefolder must already exist.
r.ImageStyle.ImageFolder = Environment.CurrentDirectory
' Subfolder for images will be created by the component.
r.ImageStyle.ImageSubFolder = "image.files"
' A template name for images.
r.ImageStyle.ImageFileName = "picture"
' false - store images as files on HDD,
' true - store images inside HTML document using base64.
r.ImageStyle.IncludeImageInHtml = False
Try
r.OpenRtf(rtfString)
' Here we've got the HTML document as string.
r.ToHtml(htmlString, Nothing)
' Save our HTML into file and open it for the demonstration purposes.
File.WriteAllText(outFile, htmlString)
System.Diagnostics.Process.Start(New System.Diagnostics.ProcessStartInfo(outFile) With {.UseShellExecute = True})
Catch e As Exception
Console.WriteLine($"Error: {e.Message}")
Console.WriteLine("Press any key ...")
Console.ReadKey()
End Try
End Sub
End Class
End Namespace
If you are looking also for a .Net solution to Create or Modify HTML documents, see our Document .Net.
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: