iText - Görüntünün Konumunu Ayarlama

Bu bölümde, iText kitaplığını kullanarak bir PDF belgesindeki bir görüntünün konumunu nasıl ayarlayacağımızı göreceğiz.

Görüntünün Konumunu Ayarlama

Örneğini oluşturarak boş bir PDF Belgesi oluşturabilirsiniz. Documentsınıf. Bu sınıfı başlatırken, birPdfDocument yapıcısına bir parametre olarak nesne.

PDF'ye bir görüntü eklemek için, görüntünün eklenmesi gereken bir nesnesini oluşturun ve bunu kullanarak ekleyin. add() yöntemi Documentsınıf. Yöntemi kullanarak görüntüyü belge üzerinde istediğiniz bir konuma ekleyebilirsiniz.setFixedPosition() of Image sınıf.

PDF belgesindeki bir görüntünün konumunu ayarlamak için adımlar aşağıda verilmiştir.

Adım 1: Bir PdfWriter nesnesi oluşturma

PdfWritersınıfı, bir PDF için DocWriter'ı temsil eder. Bu sınıf pakete aittircom.itextpdf.kernel.pdf. Bu sınıfın yapıcısı, PDF'nin oluşturulacağı dosyanın yolunu temsil eden bir dizeyi kabul eder.

Aşağıda gösterildiği gibi yapıcısına bir dize değeri (PDF oluşturmanız gereken yolu temsil eden) ileterek PdfWriter sınıfını örnekleyin.

// Creating a PdfWriter 
String dest = "C:/itextExamples/positionOfImage.pdf"; 
PdfWriter writer = new PdfWriter(dest);

Bu tür bir nesne bir PdfDocument'e (sınıf) aktarıldığında, bu belgeye eklenen her öğe belirtilen dosyaya yazılacaktır.

Adım 2: Bir PdfDocument nesnesi oluşturma

PdfDocumentclass, iText'teki PDF Belgesini temsil eden sınıftır. Bu sınıf pakete aittircom.itextpdf.kernel.pdf. Bu sınıfı başlatmak için (yazma modunda), sınıfın bir nesnesini iletmeniz gerekir.PdfWriter yapıcısına.

Aşağıda gösterildiği gibi, yukarıda oluşturulan PdfWriter nesnesini yapıcısına ileterek PdfDocument sınıfını örnekleyin.

// Creating a PdfDocument  
PdfDocument pdfDoc = new PdfDocument(writer);

Bir PdfDocument nesnesi oluşturulduktan sonra, sınıfının sağladığı ilgili yöntemleri kullanarak sayfa, yazı tipi, dosya eki ve olay işleyici gibi çeşitli öğeler ekleyebilirsiniz.

3. Adım: Belge nesnesini oluşturma

Document paketin sınıfı com.itextpdf.layoutkendi kendine yeten bir PDF oluştururken kullanılan kök öğedir. Bu sınıfın kurucularından biri, PdfDocument sınıfının bir nesnesini kabul eder.

Örnekleyin Document sınıfın nesnesini ileterek sınıf PdfDocument aşağıda gösterildiği gibi önceki adımlarda oluşturulur.

// Creating a Document  
Document document = new Document(pdfDoc);

4. Adım: Bir Görüntü nesnesi oluşturma

Görüntü nesnesini oluşturmak için öncelikle bir ImageData kullanarak nesne create() yöntemi ImageDataFactorysınıf. Bu yöntemin bir parametresi olarak, aşağıda gösterildiği gibi görüntünün yolunu temsil eden bir dize parametresi iletin.

// Creating an ImageData object 
String imageFile = "C:/itextExamples/javafxLogo.jpg"; 
ImageData data = ImageDataFactory.create(imageFile);

Şimdi, somutlaştırın Image sınıfı com.itextpdf.layout.elementpaketi. Örnekleme yaparken, geçImageData nesnesi, aşağıda gösterildiği gibi yapıcısına bir parametre olarak.

// Creating an Image object 
Image img = new Image(data);

Adım 5: Görüntünün konumunu ayarlama

Bir PDF belgesindeki görüntünün konumunu, setFixedPosition()Görüntü yöntemi. Görüntünün konumunu, aşağıda gösterildiği gibi bu yöntemi kullanarak belgedeki koordinatlara (100, 250) ayarlayın.

// Setting the position of the image to the center of the page 
image.setFixedPosition(100, 250);

6. Adım: Belgeye resim ekleme

Şimdi, önceki adımda oluşturulan görüntü nesnesini, add() yöntemi Document sınıf, aşağıda gösterildiği gibi.

// Adding image to the document 
document.add(img);

7. Adım: Belgeyi Kapatma

Belgeyi kullanarak kapatın. close() yöntemi Document sınıf, aşağıda gösterildiği gibi.

// Closing the document 
document.close();

Misal

Aşağıdaki Java programı, iText kitaplığını kullanarak bir görüntünün bir PDF belgesinde istenen bir konuma nasıl ayarlanacağını gösterir. Adıyla bir PDF belgesi oluştururpositionOfImage.pdf, ona bir resim ekler, onu sayfanın ortasına yaklaştırır ve yola kaydeder C:/itextExamples/

Bu kodu adıyla bir dosyaya kaydedin SettingPosition.java.

import com.itextpdf.io.image.ImageData; 
import com.itextpdf.io.image.ImageDataFactory; 

import com.itextpdf.kernel.pdf.PdfDocument; 
import com.itextpdf.kernel.pdf.PdfWriter; 

import com.itextpdf.layout.Document; 
import com.itextpdf.layout.element.Image;  

public class SettingPosition {      
   public static void main(String args[]) throws Exception {              
      // Creating a PdfWriter       
      String dest = "C:/EXAMPLES/itextExamples/3images/positionOfImage.pdf";       
      PdfWriter writer = new PdfWriter(dest);               
      
      // Creating a PdfDocument       
      PdfDocument pdfDoc = new PdfDocument(writer);              
      
      // Creating a Document        
      Document document = new Document(pdfDoc);              
      
      // Creating an ImageData object       
      String imFile = "C:/EXAMPLES/itextExamples/3images/logo.jpg";       
      ImageData data = ImageDataFactory.create(imFile);             

      // Creating an Image object        
      Image image = new Image(data);                
      
      // Setting the position of the image to the center of the page       
      image.setFixedPosition(100, 250);                  
      
      // Adding image to the document       
      document.add(image);              
      
      // Closing the document       
      document.close();
      
      System.out.println("Image added");    
   } 
}

Kaydedilen Java dosyasını aşağıdaki komutları kullanarak komut isteminden derleyin ve yürütün.

javac SettingPosition.java 
java SettingPosition

Yürütmenin ardından, yukarıdaki program aşağıdaki mesajı görüntüleyen bir PDF belgesi oluşturur.

Image added

Belirtilen yolu doğrularsanız, oluşturulan PDF belgesini aşağıda gösterildiği gibi bulabilirsiniz.