Click or drag to resize

ExcelToPdfConvertBytes Method

Convert Excel bytes array to PDF, Word, RTF bytes array

Namespace: SautinSoft
Assembly: SautinSoft.ExcelToPdf (in SautinSoft.ExcelToPdf.dll) Version: 2023.11.22
Syntax
public byte[] ConvertBytes(
	byte[] excelByte
)

Parameters

excelByte  Byte
Array of bytes containing Excel document

Return Value

Byte
Bytes array where output document will be saved after converting. You don't have to allocate memory for this array.
Example
Convert Excel to PDF in memory using C#
using System;
using System.IO;
using SautinSoft;

namespace Sample
{
    class Sample
    {
        static void Main(string[] args)
        {
            //ConvertExcelAsByteArray();
            ConvertExcelAsMemoryStream();
        }
        public static void ConvertExcelAsByteArray()
        {
            // Convert Excel to PDF in memory
            ExcelToPdf x = new ExcelToPdf();

            // Set PDF as output format.
            x.OutputFormat = SautinSoft.ExcelToPdf.eOutputFormat.Pdf;

            string excelFile = Path.GetFullPath(@"..\..\..\test.xlsx");
            string pdfFile = Path.ChangeExtension(excelFile, ".pdf"); ;

            byte[] excelBytes = File.ReadAllBytes(excelFile);
            byte[] pdfBytes = null;

            try
            {
                pdfBytes = x.ConvertBytes(excelBytes);

                // Save pdfBytes to a file for demonstration purposes.
                File.WriteAllBytes(pdfFile, pdfBytes);
                System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo(pdfFile) { UseShellExecute = true });

            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                Console.ReadLine();
            }
        }
        public static void ConvertExcelAsMemoryStream()
        {
            // Convert Excel to PDF in memory
            ExcelToPdf x = new ExcelToPdf();

            // Set PDF as output format.
            x.OutputFormat = SautinSoft.ExcelToPdf.eOutputFormat.Pdf;

            string excelFile = Path.GetFullPath(@"..\..\..\test.xlsx");
            string pdfFile = Path.ChangeExtension(excelFile, ".pdf");
            byte[] pdfBytes = null;

            try
            {
                // Let us say, we have a memory stream with Excel data.
                using (MemoryStream ms = new MemoryStream(File.ReadAllBytes(excelFile)))
                {
                    pdfBytes = x.ConvertBytes(ms.ToArray());
                }
                // Save pdfBytes to a file for demonstration purposes.
                File.WriteAllBytes(pdfFile, pdfBytes);
                System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo(pdfFile) { UseShellExecute = true });

            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                Console.ReadLine();
            }
        }
    }
}
Convert Excel to PDF in memory using VB.Net
Imports System
Imports System.IO
Imports SautinSoft

Module Sample

    Sub Main()
        ConvertExcelAsByteArray()
        'ConvertExcelAsMemoryStream()
    End Sub

    Public Sub ConvertExcelAsByteArray()
        ' Convert Excel to PDF in memory
        Dim x As New ExcelToPdf()

        ' Set PDF as output format.
        x.OutputFormat = SautinSoft.ExcelToPdf.eOutputFormat.Pdf

        Dim excelFile As String = Path.GetFullPath("..\..\..\test.xlsx")
        Dim pdfFile As String = Path.ChangeExtension(excelFile, ".pdf")


        Dim excelBytes() As Byte = File.ReadAllBytes(excelFile)
        Dim pdfBytes() As Byte = Nothing

        Try
            pdfBytes = x.ConvertBytes(excelBytes)

            ' Save pdfBytes to a file for demonstration purposes.
            File.WriteAllBytes(pdfFile, pdfBytes)
            System.Diagnostics.Process.Start(New System.Diagnostics.ProcessStartInfo(pdfFile) With {.UseShellExecute = True})
        Catch ex As Exception
            Console.WriteLine(ex.Message)
            Console.ReadLine()
        End Try

    End Sub

    Public Sub ConvertExcelAsMemoryStream()
        ' Convert Excel to PDF in memory
        Dim x As New ExcelToPdf()

        ' Set PDF as output format.
        x.OutputFormat = SautinSoft.ExcelToPdf.eOutputFormat.Pdf

        Dim excelFile As String = Path.GetFullPath("..\..\..\test.xlsx")
        Dim pdfFile As String = Path.ChangeExtension(excelFile, ".pdf")
        Dim pdfBytes() As Byte = Nothing

        Try
            ' Let us say, we have a memory stream with Excel data.
            Using ms As New MemoryStream(File.ReadAllBytes(excelFile))
                pdfBytes = x.ConvertBytes(ms.ToArray())
            End Using
            ' Save pdfBytes to a file for demonstration purposes.
            File.WriteAllBytes(pdfFile, pdfBytes)
            System.Diagnostics.Process.Start(New System.Diagnostics.ProcessStartInfo(pdfFile) With {.UseShellExecute = True})
        Catch ex As Exception
            Console.WriteLine(ex.Message)
            Console.ReadLine()
        End Try
    End Sub
End Module
See Also