Lavorare con le immagini nel documento PDF tramite C#

Moderna libreria C# per manipolare le immagini in PDF utilizzando le nostre API.

Aggiungi immagine al documento PDF utilizzando la libreria C#

Per aggiungere un’immagine in PDF, useremo l’API Aspose.PDF for .NET che è un’API di manipolazione dei documenti ricca di funzionalità, potente e facile da usare per la piattaforma net. Apri il gestore di pacchetti NuGet, cerca Aspose.pdf e installa. È inoltre possibile utilizzare il seguente comando dalla console di Package Manager.

Package Manager Console

PM > Install-Package Aspose.PDF

Aggiungi immagine al PDF tramite C#


È necessario Aspose.PDF for .NET per provare il codice nel proprio ambiente.

  1. Creare un oggetto Document e aprire il documento PDF di input.
  2. Ottieni la pagina a cui desideri aggiungere un’immagine.
  3. Aggiungi l’immagine alla raccolta Risorse della pagina.
  4. Utilizzare l’operatore GSave per salvare lo stato grafico corrente.
  5. Utilizzare l’operatore ConcatenateMatrix per specificare dove posizionare l’immagine.
  6. Utilizzare l’operatore Do per disegnare l’immagine sulla pagina.
  7. Utilizzare l’operatore GRestore per salvare lo stato grafico aggiornato.
  8. Salva il file PDF.

Aggiungi immagine in un file PDF esistente - C#

Example: C#


    Document pdfDocument = new Document(dataDir+ "AddImage.pdf");
    int lowerLeftX = 100;
    int lowerLeftY = 100;
    int upperRightX = 200;
    int upperRightY = 200;

    Page page = pdfDocument.Pages[1];

    FileStream imageStream = new FileStream(dataDir + "aspose-logo.jpg", FileMode.Open);

    page.Resources.Images.Add(imageStream);

    page.Contents.Add(new Aspose.Pdf.Operators.GSave());

    Aspose.Pdf.Rectangle rectangle = new Aspose.Pdf.Rectangle(lowerLeftX, lowerLeftY, upperRightX, upperRightY);
    Matrix matrix = new Matrix(new double[] { rectangle.URX - rectangle.LLX, 0, 0, rectangle.URY - rectangle.LLY, rectangle.LLX, rectangle.LLY });

    page.Contents.Add(new Aspose.Pdf.Operators.ConcatenateMatrix(matrix));
    XImage ximage = page.Resources.Images[page.Resources.Images.Count];

    page.Contents.Add(new Aspose.Pdf.Operators.Do(ximage.Name));

    page.Contents.Add(new Aspose.Pdf.Operators.GRestore());
    dataDir = dataDir + "AddImage_out.pdf";
    
    pdfDocument.Save(dataDir);