Converts HTML file or URL into array of PDF bytes.

Namespace:  SautinSoft
Assembly:  PdfMetamorphosis (in PdfMetamorphosis.dll) Version: 6.7.12.19

Syntax

      
 C#  Visual Basic 
public byte[] HtmlToPdfConvertFileToByte(
	string inputFileName
)
Public Function HtmlToPdfConvertFileToByte ( _
	inputFileName As String _
) As Byte()

Parameters

inputFileName
String
Path to local HTML file or URL

Return Value

PDF document as byte array, or null in case of converting failed

Remarks

Converts HTML file or URL into array of PDF bytes.

Examples

CopyHow to convert HTML string to PDF bytes using C# in memory
using System;
using System.IO;
using System.Collections;
using System.Net;

namespace Sample
{
    class Test
    {

        static void Main(string[] args)
        {
            SautinSoft.PdfMetamorphosis p = new SautinSoft.PdfMetamorphosis();

            // After purchasing the license, please insert your serial number here to activate the component
            // p.Serial = "XXXXXXXXXXX";

            if (p != null)
            {
                string htmlPath = @"..\..\..\..\..\UTF-8 Sampler.htm";
                string pdfPath = Path.ChangeExtension(htmlPath, ".pdf");
                string htmlString = "";

                // The easiest way is using the method 'HtmlToPdfConvertFile':
                // int ret = p.HtmlToPdfConvertFile(htmlPath,pdfPath);
                // or :
                // 1. Get HTML content.
                htmlString = ReadFromFile(htmlPath); 

                // 2. Converting HTML to PDF
                // Specify BaseUrl to help converter find a full path for relative images, CSS.
                p.HtmlSettings.BaseUrl = Path.GetDirectoryName(Path.GetFullPath(htmlPath));
                byte[] pdfBytes = p.HtmlToPdfConvertStringToByte(htmlString);

                if (pdfBytes != null)
                {
                    // 3. Save the PDF document to a file for a viewing purpose.
                    File.WriteAllBytes(pdfPath, pdfBytes);
                    System.Diagnostics.Process.Start(pdfPath);
                }
                else
                {               
                    System.Console.WriteLine("An error occured during converting HTML to PDF!");
                }
            }
        }
        public static string ReadFromFile(string fileName)
        {
            try
            {
                FileInfo fi = new FileInfo(fileName);
                FileStream strmRead = fi.Open(FileMode.Open);
                int len = (int)fi.Length;
                byte[] b = new byte[len];
                strmRead.Read(b, 0, len);
                strmRead.Close();
                char[] arCharRes = new char[len];
                for (int i = 0; i < len; i++)
                {
                    arCharRes[i] = (char)b[i];
                }
                return new string(arCharRes);
            }
            catch
            {                
                return "";
            }
        }
    }
}
CopyHow to convert HTML string PDF bytes using VB.Net in memory
Imports System
Imports System.IO
Imports System.Collections
Imports System.Net

Namespace Sample
    Friend Class Test

        Shared Sub Main(ByVal args() As String)
            Dim p As New SautinSoft.PdfMetamorphosis()

            ' After purchasing the license, please insert your serial number here to activate the component
            ' p.Serial = "XXXXXXXXXXX";


            If p IsNot Nothing Then
                Dim htmlPath As String = "..\..\..\..\..\UTF-8 Sampler.htm"
                Dim pdfPath As String = Path.ChangeExtension(htmlPath, ".pdf")
                Dim htmlString As String = ""

                ' The easiest way is using the method 'HtmlToPdfConvertFile':
                ' int ret = p.HtmlToPdfConvertFile(htmlPath,pdfPath);
                ' or :
                ' 1. Get HTML content.
                htmlString = ReadFromFile(htmlPath)

                ' 2. Converting HTML to PDF
                ' Specify BaseUrl to help converter find a full path for relative images, CSS.
                p.HtmlSettings.BaseUrl = Path.GetDirectoryName(Path.GetFullPath(htmlPath))
                Dim pdfBytes() As Byte = p.HtmlToPdfConvertStringToByte(htmlString)

                If pdfBytes IsNot Nothing Then
                    ' 3. Save the PDF document to a file for a viewing purpose.
                    File.WriteAllBytes(pdfPath, pdfBytes)
                    System.Diagnostics.Process.Start(pdfPath)
                Else
                    System.Console.WriteLine("An error occured during converting HTML to PDF!")
                End If
            End If
        End Sub
        Public Shared Function ReadFromFile(ByVal fileName As String) As String
            Try
                Dim fi As New FileInfo(fileName)
                Dim strmRead As FileStream = fi.Open(FileMode.Open)
                Dim len As Integer = CInt(fi.Length)
                Dim b(len - 1) As Byte
                strmRead.Read(b, 0, len)
                strmRead.Close()
                Dim arCharRes(len - 1) As Char
                For i As Integer = 0 To len - 1
                    arCharRes(i) = Microsoft.VisualBasic.ChrW(b(i))
                Next i
                Return New String(arCharRes)
            Catch
                Return ""
            End Try
        End Function
    End Class
End Namespace

See Also