Ovaj članak pomaže u kako umetnuti sliku u PDF pomoću Jave. Pruža pojedinosti o konfiguraciji IDE-a, postupak korak po korak za pisanje aplikacije i primjer koda koji se može izvoditi za dodavanje slike u PDF pomoću Jave. Također ćete naučiti različite opcije za prilagodbu procesa za prikaz slike u bilo kojem formatu, recimo PNG, JPEG itd., i postavljanje slike na željenu poziciju na PDF stranici.
Koraci za stavljanje slike u PDF pomoću Jave
- Uspostavite okruženje za korištenje Aspose.PDF for Java za umetanje slike
- Učitajte izvornu PDF datoteku, pristupite prvoj page za dodavanje slike i spremite stanje grafike
- Stvorite tok slike i dodajte ga resursu zbirke slika učitanog PDF-a
- Instancirajte objekt Matrix koristeći željeni pravokutni položaj za sliku
- Definirajte mogućnosti crtanja slike i nacrtajte sliku koristeći Do() metodu
- Vratite stanje grafike i spremite izlazni PDF prije zatvaranja tokova slika i PDF-a
Ovi koraci objašnjavaju kako dodati sliku u PDF pomoću Jave gdje se prvo dobiva referenca stranice iz učitane PDF datoteke, a zatim se stvara tok slike. Ova se slika dodaje kolekciji slika odabrane stranice, a zatim se matrica transformacije deklarira pomoću pravokutnika položaja za ciljnu sliku. Na kraju se slika renderira pomoću Do() metode, a rezultirajuća PDF datoteka sprema se na disk.
Kod za dodavanje fotografije u PDF pomoću Jave
import com.aspose.pdf.*; | |
import com.aspose.pdf.operators.*; | |
public class AsposeTest { | |
public static void main(String[] args) throws Exception {//Main function to add image to a PDF using Java | |
// Instantiate the license | |
License lic = new License(); | |
lic.setLicense("Aspose.Total.lic"); | |
// Load the source PDF file | |
Document srcDocument = new Document("sample.pdf"); | |
// Get a reference to the target page | |
Page pdfPage = srcDocument.getPages().get_Item(1); | |
// Create stream for the image | |
java.io.FileInputStream streamForImage = new java.io.FileInputStream(new java.io.File("logo.png")); | |
// Add the stream of image to the collection of images in the selected page | |
pdfPage.getResources().getImages().add(streamForImage); | |
// Save the current state of the graphics for later use | |
pdfPage.getContents().add(new GSave()); | |
// Instantiate the Matrix object using the desired rectangular area | |
Rectangle rect = new Rectangle(50, 750, 100, 800); | |
Matrix matrix = new Matrix(new double[] { rect.getURX() - rect.getLLX(), 0, 0, | |
rect.getURY() - rect.getLLY(), rect.getLLX(), rect.getLLY() }); | |
// Define how image must be placed | |
pdfPage.getContents().add(new ConcatenateMatrix(matrix)); | |
XImage pdfXimage = pdfPage.getResources().getImages().get_Item(pdfPage.getResources().getImages().size()); | |
// Draw image using the Do operator | |
pdfPage.getContents().add(new Do(pdfXimage.getName())); | |
// Restore the graphics state | |
pdfPage.getContents().add(new GRestore()); | |
// Save the resultant PDF | |
srcDocument.save("updated_document.pdf"); | |
// Close image stream | |
streamForImage.close(); | |
// Close the PDF | |
srcDocument.close(); | |
System.out.println("Done"); | |
} | |
} |
Ovaj kôd demonstrira postupak dodavanja slike u PDF pomoću Jave. Koristi klasu Document za učitavanje PDF-a, objekt klase Page za držanje reference na ciljnu PDF stranicu, objekt FileInputStream za držanje ciljne slike, klasu pravokutnika za opisivanje položaja slike na stranici, objekt Matrix za definiranje crtež slike i metodu Do() za renderiranje slike. Imajte na umu da se stanje grafike sprema prije pokretanja ove operacije i vraća nakon završetka operacije.
U ovom smo članku svjedočili procesu dodavanja fotografije u PDF pomoću Jave. Ako želite naučiti postupak dodavanja vodenog žiga u PDF, pogledajte članak na kako dodati vodeni žig u PDF pomoću Jave.