Lavorare con le immagini nel documento PDF tramite Java

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

Aggiungi immagine al documento PDF utilizzando la libreria Java

Per aggiungere un’immagine in PDF, useremo Aspose.PDF for Java API che è un’API di conversione ricca di funzionalità, potente e facile da usare per la piattaforma Java. Puoi scaricare la sua ultima versione direttamente da Maven e installarla all’interno del tuo progetto basato su Maven aggiungendo le seguenti configurazioni a pom.xml.

Repository

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java AP</name>
    <url>https://releases.aspose.com/java/repo/</url>
</repository>

Dependency

<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-pdf</artifactId>
<version>version of aspose-pdf API</version>
</dependency>

Aggiungi immagine al PDF tramite Java


È necessario Aspose.PDF for Java 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 - Java

Example: Java


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