iText - Создание PDF-документа

Давайте теперь поймем, как создать PDF-документ с помощью библиотеки iText.

Создание пустого PDF-документа

Вы можете создать пустой PDF-документ, создав экземпляр Documentкласс. При создании экземпляра этого класса вам необходимо передатьPdfDocument объект в качестве параметра его конструктора.

Ниже приведены шаги по созданию пустого PDF-документа.

Шаг 1. Создание объекта PdfWriter

В PdfWriterКласс представляет Doc Writer для PDF. Этот класс принадлежит пакетуcom.itextpdf.kernel.pdf. Конструктор этого класса принимает строку, представляющую путь к файлу, в котором должен быть создан PDF.

Создайте экземпляр класса PdfWriter, передав строковое значение (представляющее путь, по которому вам нужно создать PDF-файл) в его конструктор, как показано ниже.

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

Когда объект этого типа передается в PdfDocument (класс), каждый элемент, добавленный в этот документ, будет записан в указанный файл.

Шаг 2: Создание объекта PdfDocument

В PdfDocumentclass - это класс, представляющий PDF-документ в iText. Этот класс принадлежит пакетуcom.itextpdf.kernel.pdf. Чтобы создать экземпляр этого класса (в режиме записи), вам необходимо передать объект классаPdfWriter своему конструктору.

Создайте экземпляр класса PdfDocument, передав созданный выше объект PdfWriter в его конструктор, как показано ниже.

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

После создания объекта PdfDocument вы можете добавлять различные элементы, такие как страница, шрифт, вложение файла и обработчик событий, используя соответствующие методы, предоставляемые его классом.

Шаг 3. Добавление пустой страницы

В addNewPage() метод PdfDocument Класс используется для создания пустой страницы в PDF-документе.

Добавьте пустую страницу в документ PDF, созданный на предыдущем шаге, как показано ниже.

// Adding an empty page 
pdfDoc.addNewPage();

Шаг 4: Создание объекта документа

В Document класс пакета com.itextpdf.layoutявляется корневым элементом при создании самодостаточного PDF-файла. Один из конструкторов этого класса принимает объект класса PdfDocument.

Создайте экземпляр Document class, передав объект класса PdfDocument созданный на предыдущих шагах, как показано ниже.

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

Шаг 5: закрытие документа

Закройте документ, используя close() метод Document класс, как показано ниже.

// Closing the document 
document.close();

пример

Ниже приводится программа на Java, демонстрирующая создание документа PDF. Создает PDF-документ с именемsample.pdf, добавляет к ней пустую страницу и сохраняет ее в пути C:/itextExamples/

Сохраните этот код в файле с именем create_PDF.java.

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

public class create_PDF {    
   public static void main(String args[]) throws Exception {              
      // Creating a PdfWriter       
      String dest = "C:/itextExamples/sample.pdf";       
      PdfWriter writer = new PdfWriter(dest); 
   
      // Creating a PdfDocument       
      PdfDocument pdfDoc = new PdfDocument(writer);              
   
      // Adding a new page 
      pdfDoc.addNewPage();               
   
      // Creating a Document        
      Document document = new Document(pdfDoc);               
   
      // Closing the document    
      document.close();              
      System.out.println("PDF Created");    
   } 
}

Скомпилируйте и выполните сохраненный файл Java из командной строки, используя следующие команды:

javac create_PDF.java 
java create_PDF

После выполнения вышеуказанная программа создает PDF-документ, отображающий следующее сообщение.

PDF created

Если вы проверите указанный путь, вы сможете найти созданный документ PDF, как показано ниже.

Поскольку это пустой документ, если вы попытаетесь открыть этот документ, отобразится сообщение об ошибке, как показано на следующем снимке экрана.