Преобразование изображений в PDF в памяти на C# и .NET


Полный код

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;
			// Before starting, we recommend to get a free 100-day key:
            // https://sautinsoft.com/start-for-free/
            
            // Apply the key here:
			// SautinSoft.PdfVision.SetLicense("...");
            

            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();
            }
        }
    }
}

Download

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
			' Before starting, we recommend to get a free 100-day key:
            ' https://sautinsoft.com/start-for-free/
            
            ' Apply the key here:
			' SautinSoft.PdfVision.SetLicense("...");

			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

Download


Если вам нужен пример кода или у вас есть вопрос: напишите нам по адресу support@sautinsoft.com или спросите в онлайн-чате (правый нижний угол этой страницы) или используйте форму ниже:



Вопросы и предложения всегда приветствуются!

Мы разрабатываем компоненты .Net с 2002 года. Мы знаем форматы PDF, DOCX, RTF, HTML, XLSX и Images. Если вам нужна помощь в создании, изменении или преобразовании документов в различных форматах, мы можем вам помочь. Мы напишем для вас любой пример кода абсолютно бесплатно.