C#/VB.NET: converti più immagini in un unico PDF

2023-10-20 03:03:10

Installato tramite NuGet

PM> Install-Package Spire.PDF

Link correlati

Se disponi di più immagini che desideri combinare in un unico file per una distribuzione o un'archiviazione più semplice, convertirle in un unico documento PDF è un'ottima soluzione. Questo processo non solo consente di risparmiare spazio, ma garantisce anche che tutte le immagini siano conservate insieme in un unico file, rendendone conveniente la condivisione o il trasferimento. In questo articolo imparerai come farlo combinare diverse immagini in un unico documento PDF in C# e VB.NET utilizzando Spire.PDF for .NET.

Installa Spire.PDF for .NET

Per cominciare, devi aggiungere i file DLL inclusi nel pacchetto Spire.PDF for .NET come riferimenti nel tuo progetto .NET. I file DLL possono essere scaricati da questo link o installato tramite NuGet.

PM> Install-Package Spire.PDF

Combina più immagini in un unico PDF in C# e VB.NET

Per convertire tutte le immagini di una cartella in un PDF, iteriamo su ciascuna immagine, aggiungiamo una nuova pagina al PDF con le stesse dimensioni dell'immagine, quindi disegniamo l'immagine sulla nuova pagina. Di seguito sono riportati i passaggi dettagliati.

  • Crea un oggetto PdfDocument.
  • Imposta i margini della pagina su zero utilizzando il metodo PdfDocument.PageSettings.SetMargins().
  • Ottieni la cartella in cui sono archiviate le immagini.
  • Scorri ogni file immagine nella cartella e ottieni la larghezza e l'altezza di un'immagine specifica.
  • Aggiungi una nuova pagina che abbia la stessa larghezza e altezza dell'immagine al documento PDF utilizzando il metodo PdfDocument.Pages.Add().
  • Disegna l'immagine sulla pagina utilizzando il metodo PdfPageBase.Canvas.DrawImage().
  • Salvare il documento utilizzando il metodo PdfDocument.SaveToFile().
  • C#
  • VB.NET
using Spire.Pdf;
    using Spire.Pdf.Graphics;
    using System.Drawing;
    
    namespace ConvertMultipleImagesIntoPdf
    {
        class Program
        {
            static void Main(string[] args)
            {
                //Create a PdfDocument object
                PdfDocument doc = new PdfDocument();
    
                //Set the page margins to 0
                doc.PageSettings.SetMargins(0);
    
                //Get the folder where the images are stored
                DirectoryInfo folder = new DirectoryInfo(@"C:\Users\Administrator\Desktop\Images");
    
                //Iterate through the files in the folder
                foreach (FileInfo file in folder.GetFiles())
                {
                    //Load a particular image
                    Image image = Image.FromFile(file.FullName);
    
                    //Get the image width and height
                    float width = image.PhysicalDimension.Width;
                    float height = image.PhysicalDimension.Height;
    
                    //Add a page that has the same size as the image
                    PdfPageBase page = doc.Pages.Add(new SizeF(width, height));
    
                    //Create a PdfImage object based on the image
                    PdfImage pdfImage = PdfImage.FromImage(image);
    
                    //Draw image at (0, 0) of the page
                    page.Canvas.DrawImage(pdfImage, 0, 0, pdfImage.Width, pdfImage.Height);
                }
    
                //Save to file
                doc.SaveToFile("CombinaImagesToPdf.pdf");
                doc.Dispose();
            }
        }
    }

C#/VB.NET: Convert Multiple Images into a Single PDF

Richiedi una licenza temporanea

Se desideri rimuovere il messaggio di valutazione dai documenti generati o eliminare le limitazioni della funzione, per favore richiedere una licenza di prova di 30 giorni per te.

Guarda anche