Praca z obrazami w dokumencie PDF za pośrednictwem Java

Nowoczesna biblioteka Java do manipulowania obrazami w formacie PDF za pomocą naszych interfejsów API.

Dodaj obraz do dokumentu PDF za pomocą biblioteki Java

Aby dodać obraz w formacie PDF, użyjemy interfejsu API Aspose.PDF for Java, który jest bogatym w funkcje, wydajnym i łatwym w użyciu interfejsem API konwersji dla platformy Java. Możesz pobrać jego najnowszą wersję bezpośrednio z Maven i zainstalować ją w ramach projektu opartego na Maven, dodając następujące konfiguracje do 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>

Dodaj obraz do pliku PDF za pośrednictwem Java


Potrzebujesz Aspose.PDF for Java, aby wypróbować kod w swoim środowisku.

  1. Utwórz obiekt Document i otwórz wejściowy dokument PDF.
  2. Pobierz stronę, do której chcesz dodać obraz.
  3. Dodaj obraz do kolekcji Zasoby strony.
  4. Użyj operatora GSave, aby zapisać bieżący stan graficzny.
  5. Użyj operatora ConcateNateMatrix, aby określić, gdzie obraz ma być umieszczony.
  6. Użyj operatora Do, aby narysować obraz na stronie.
  7. Użyj operatora GreStore, aby zapisać zaktualizowany stan graficzny.
  8. Zapisz plik PDF.

Dodaj obraz w istniejącym pliku PDF - 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);