Click or drag to resize

PdfVisionConvertImageToPdf(ListByte, ImageToPdfOptions) Method

Convert images to PDF in memory.

Namespace: SautinSoft.PdfVision
Assembly: SautinSoft.PdfVision (in SautinSoft.PdfVision.dll) Version: 2024.6.20
Syntax
public byte[] ConvertImageToPdf(
	List<byte[]> imageDataCollection,
	ImageToPdfOptions options = null
)

Parameters

imageDataCollection  ListByte
Collection of arrays of bytes representing images, any type: PNG, JPG, Bitmap, TIFF and Multipage TIFF, GIF etc.
options  ImageToPdfOptions  (Optional)
Image to PDF conversion options, such as: Page Size, Orientation, Header, Footer, Numbering, Page Margins, Scale and so forth.

Return Value

Byte
PDF document as bytes array.
Example
How to convert images to PDF in memory using C#
using System;
using System.IO;
using System.Collections.Generic;
using SautinSoft.PdfVision;

namespace Sample
{
    class Program
    {
        static void Main(string[] args)
        {
            ConvertImagesToPdfInMemory();
        }
        public static void ConvertImagesToPdfInMemory()
        {
            // We'll use files here only to get input data and show the PDF result.
            // The converting process will be done completely in memory.
            string[] inpFiles = new string[]
            {
                @"..\..\..\testing\image-jpeg.jpg",
                @"..\..\..\testing\image-png.png",
                @"..\..\..\testing\image-tiff.tiff",
                @"..\..\..\testing\multipage.tiff"
            };
            string outFile = new FileInfo(@"Result.pdf").FullName;

            PdfVision v = new PdfVision();
            ImageToPdfOptions options = new ImageToPdfOptions();
            options.PageSetup.PaperType = PaperType.Letter;

            List<byte[]> imageBytesCollection = new List<byte[]>();
            foreach (string inpFile in inpFiles)
                imageBytesCollection.Add(File.ReadAllBytes(inpFile));

            try
            {
                byte[] pdfDocument = v.ConvertImageToPdf(imageBytesCollection, options);
                File.WriteAllBytes(outFile, pdfDocument);
                System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo(outFile) { UseShellExecute = true });
            }
            catch (Exception ex)
            {
                Console.WriteLine($"Error: {ex.Message}");
                Console.ReadLine();
            }
        }
    }
}
How to convert images to PDF in memory using VB.Net
Imports System
Imports System.IO
Imports System.Collections.Generic
Imports SautinSoft.PdfVision

Namespace Sample
    Friend Class Program
        Shared Sub Main(ByVal args() As String)
            ConvertImagesToPdfInMemory()
        End Sub
        Public Shared Sub ConvertImagesToPdfInMemory()
            ' We'll use files here only to get input data and show the PDF result.
            ' The converting process will be done completely in memory.
            Dim inpFiles() As String = {
                "..\..\..\testing\image-jpeg.jpg",
                "..\..\..\testing\image-png.png",
                "..\..\..\testing\image-tiff.tiff",
                "..\..\..\testing\multipage.tiff"}

            Dim outFile As String = (New FileInfo("Result.pdf")).FullName

            Dim v As New PdfVision()
            Dim options As New ImageToPdfOptions()
            options.PageSetup.PaperType = PaperType.Letter

            Dim imageBytesCollection As New List(Of Byte())()
            For Each inpFile As String In inpFiles
                imageBytesCollection.Add(File.ReadAllBytes(inpFile))
            Next inpFile

            Try
                Dim pdfDocument() As Byte = v.ConvertImageToPdf(imageBytesCollection, options)
                File.WriteAllBytes(outFile, pdfDocument)
                System.Diagnostics.Process.Start(New System.Diagnostics.ProcessStartInfo(outFile) With {.UseShellExecute = True})
            Catch ex As Exception
                Console.WriteLine($"Error: {ex.Message}")
                Console.ReadLine()
            End Try
        End Sub
    End Class
End Namespace
See Also