Учебники

iText — Краткое руководство

iText — Обзор

Portable Document Format (PDF) — это формат файла, который помогает представлять данные способом, независимым от прикладного программного обеспечения, аппаратного обеспечения и операционных систем. Каждый файл PDF содержит описание плоского документа с фиксированным макетом, включая текст, шрифты, графику и другую информацию, необходимую для его отображения.

Существует несколько библиотек для создания и управления документами PDF с помощью программ, таких как —

  • Библиотека Adobe PDF — эта библиотека предоставляет API на таких языках, как C ++, .NET и Java. Используя это, мы можем редактировать, просматривать, распечатывать и извлекать текст из документов PDF.

  • Процессор форматирования объектов — Форматер печати с открытым исходным кодом, управляемый объектами форматирования XSL и независимым форматом вывода. Основной целью вывода является PDF.

  • PDF Box — Apache PDFBox — это библиотека Java с открытым исходным кодом, которая поддерживает разработку и преобразование документов PDF. Используя эту библиотеку, вы можете разрабатывать Java-программы, которые создают, конвертируют и обрабатывают документы PDF.

  • Отчеты Jasper — это инструмент отчетов Java, который генерирует отчеты в формате PDF, включая Microsoft Excel, RTF, ODT, значения через запятую и файлы XML.

Библиотека Adobe PDF — эта библиотека предоставляет API на таких языках, как C ++, .NET и Java. Используя это, мы можем редактировать, просматривать, распечатывать и извлекать текст из документов PDF.

Процессор форматирования объектов — Форматер печати с открытым исходным кодом, управляемый объектами форматирования XSL и независимым форматом вывода. Основной целью вывода является PDF.

PDF Box — Apache PDFBox — это библиотека Java с открытым исходным кодом, которая поддерживает разработку и преобразование документов PDF. Используя эту библиотеку, вы можете разрабатывать Java-программы, которые создают, конвертируют и обрабатывают документы PDF.

Отчеты Jasper — это инструмент отчетов Java, который генерирует отчеты в формате PDF, включая Microsoft Excel, RTF, ODT, значения через запятую и файлы XML.

Что такое iText?

Подобно вышеперечисленному программному обеспечению iText — это библиотека Java PDF, с помощью которой вы можете разрабатывать программы Java, которые создают, конвертируют и обрабатывают документы PDF.

Особенности iText

Ниже приведены заметные особенности библиотеки iText —

  • Интерактивный — iText предоставляет вам классы (API) для создания интерактивных документов PDF. Используя их, вы можете создавать карты и книги.

  • Добавление закладок, номеров страниц и т. Д. — Используя iText, вы можете добавлять закладки, номера страниц и водяные знаки.

  • Разделить и объединить — Используя iText, вы можете разбить существующий PDF-файл на несколько PDF-файлов, а также добавить / объединить дополнительные страницы.

  • Заполнение форм — Используя iText, вы можете заполнять интерактивные формы в PDF-документе.

  • Сохранить как изображение — Используя iText, вы можете сохранять PDF-файлы в виде файлов изображений, таких как PNG или JPEG.

  • Canvas — библиотека iText предоставляет вам класс Canvas, с помощью которого вы можете рисовать различные геометрические фигуры в документе PDF, такие как круг, линия и т. Д.

  • Создание PDF-файлов — Используя iText, вы можете создать новый PDF-файл из ваших программ Java. Вы можете включить изображения и шрифты тоже.

Интерактивный — iText предоставляет вам классы (API) для создания интерактивных документов PDF. Используя их, вы можете создавать карты и книги.

Добавление закладок, номеров страниц и т. Д. — Используя iText, вы можете добавлять закладки, номера страниц и водяные знаки.

Разделить и объединить — Используя iText, вы можете разбить существующий PDF-файл на несколько PDF-файлов, а также добавить / объединить дополнительные страницы.

Заполнение форм — Используя iText, вы можете заполнять интерактивные формы в PDF-документе.

Сохранить как изображение — Используя iText, вы можете сохранять PDF-файлы в виде файлов изображений, таких как PNG или JPEG.

Canvas — библиотека iText предоставляет вам класс Canvas, с помощью которого вы можете рисовать различные геометрические фигуры в документе PDF, такие как круг, линия и т. Д.

Создание PDF-файлов — Используя iText, вы можете создать новый PDF-файл из ваших программ Java. Вы можете включить изображения и шрифты тоже.

IText Environment

Следуйте приведенным ниже инструкциям, чтобы настроить среду iText в Eclipse.

Шаг 1 — Установите Eclipse и откройте в нем новый проект, как показано ниже.

Затмение Проект

Шаг 2 — Создайте проект iTextSample, как показано ниже.

Окно нового проекта

Шаг 3 — Щелкните правой кнопкой мыши проект и преобразуйте его в проект Maven, как показано ниже. Как только вы преобразуете его в проект Maven, он предоставит вам файл pom.xml, в котором вам нужно указать необходимые зависимости. После этого jar- файлы этих зависимостей будут автоматически загружены в ваш проект.

Конфигурация Maven

Шаг 4 — Теперь, в pom.xml проекта, скопируйте и вставьте следующее содержимое (зависимости для приложения iText) и обновите проект.

Использование pom.xml

Преобразуйте проект в проект Maven и добавьте следующее содержимое в его файл pom.xml .

<project xmlns="http://maven.apache.org/POM/4.0.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
   http://maven.apache.org/xsd/maven-4.0.0.xsd">   
   
   <modelVersion>4.0.0</modelVersion>   
   <groupId>SanthoshExample</groupId>   
   <artifactId>SanthoshExample</artifactId>   
   <version>0.0.1-SNAPSHOT</version>   
   <build>     
      <sourceDirectory>src</sourceDirectory>     
      <plugins>       
         <plugin>         
            <artifactId>maven-compiler-plugin</artifactId>         
            <version>3.5.1</version>         
            <configuration>           
               <source>1.8</source>           
               <target>1.8</target>      
            </configuration>       
         </plugin>     
      </plugins>   
   </build>     
   
   <dependencies>     
      <!-- always needed -->     
      <dependency>         
         <groupId>com.itextpdf</groupId>         
         <artifactId>kernel</artifactId>         
         <version>7.0.2</version>     
      </dependency>  
      
      <dependency>         
         <groupId>com.itextpdf</groupId>         
         <artifactId>io</artifactId>         
         <version>7.0.2</version>     
      </dependency>  
      
      <dependency>         
         <groupId>com.itextpdf</groupId>         
         <artifactId>layout</artifactId>         
         <version>7.0.2</version>
      </dependency>  
      
      <dependency>         
         <groupId>com.itextpdf</groupId>         
         <artifactId>forms</artifactId>         
         <version>7.0.2</version>    
      </dependency>  
      
      <dependency>         
         <groupId>com.itextpdf</groupId>         
         <artifactId>pdfa</artifactId>         
         <version>7.0.2</version>     
      </dependency>  
      
      <dependency>         
         <groupId>com.itextpdf</groupId>         
         <artifactId>sign</artifactId>         
         <version>7.0.2</version>     
      </dependency>  
      
      <dependency>         
         <groupId>com.itextpdf</groupId>         
         <artifactId>barcodes</artifactId>         
         <version>7.0.2</version>     
      </dependency>  
      
      <dependency>         
         <groupId>com.itextpdf</groupId>         
         <artifactId>font-asian</artifactId>         
         <version>7.0.2</version>     
      </dependency>  
      
      <dependency>         
         <groupId>com.itextpdf</groupId>         
         <artifactId>hyph</artifactId>         
         <version>7.0.2</version>    
      </dependency> 
   </dependencies>
   
</project>

Наконец, если вы наблюдаете зависимости Maven, вы можете заметить, что все необходимые файлы JAR были загружены.

Пример приложения iText

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

Класс PdfDocument — это класс, который представляет документ 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

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

Создайте экземпляр класса Document , передав объект класса 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-документ, как показано ниже.

Пример iText

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

Образец

iText — Добавление AreaBreak

В этой главе мы увидим, как создать PDF-документ с AreaBreak, используя библиотеку iText.

Создание AreaBreak

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

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

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

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

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

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

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

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

Класс PdfDocument — это класс, который представляет документ PDF в iText, этот класс принадлежит пакету com.itextpdf.kernel.pdf . Чтобы создать экземпляр этого класса (в режиме записи), вам нужно передать объект класса PdfWriter его конструктору.

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

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

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

Шаг 3: Создание объекта Document

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

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

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

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

Класс AreaBreak принадлежит пакету com.itextpdf.layout.element . При создании экземпляра этого класса текущая область контекста будет закрыта, и будет создана новая область с тем же размером (если мы используем конструктор по умолчанию).

Создайте класс AreaBreak, как показано ниже.

// Creating an Area Break    
AreaBreak aB = new AreaBreak(); 

Шаг 5: Добавление AreaBreak

Добавьте объект areabreak, созданный на предыдущем шаге, с помощью метода add () класса Document, как показано ниже.

// Adding area break to the PDF 
document.add(aB); 

Шаг 6: Закрытие документа

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

// Closing the document 
document.close(); 

пример

Следующая Java-программа демонстрирует, как создать PDF-документ с помощью AreaBreak с использованием библиотеки iText. Он создает документ в формате PDF с именем добавление AreaBreak.pdf , добавляет к нему areabreak и сохраняет его по пути C: / itextExamples / .

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

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

public class AddingAreaBreak {    
   public static void main(String args[]) throws Exception {       
      // Creating a PdfWriter       
      String dest = "C:/itextExamples/addingAreaBreak.pdf";       
      PdfWriter writer = new PdfWriter(dest);
   
      // Creating a PdfDocument       
      PdfDocument pdf = new PdfDocument(writer);             
   
      // Creating a Document by passing PdfDocument object to its constructor       
      Document document = new Document(pdf);  
   
      // Creating an Area Break          
      AreaBreak aB = new AreaBreak();           
   
      // Adding area break to the PDF       
      document.add(aB);              
   
      // Closing the document       
      document.close();           
      System.out.println("Pdf created");       
   } 
}  

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

javac AddingAreaBreak.java 
java AddingAreaBreak 

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

Pdf Created 

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

Добавление AreaBreak

iText — Добавление абзаца

В этой главе мы увидим, как создать PDF-документ и добавить к нему абзац, используя библиотеку iText.

Создание абзаца

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

Ниже приведены шаги для создания документа PDF с абзацем в нем.

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

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

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

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

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

Шаг 2. Создание PDF-документа

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

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

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

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

Шаг 3: Создание класса Document

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

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

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

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

Класс Paragraph представляет собой автономный блок текстовой и графической информации. Он принадлежит пакету com.itextpdf.layout.element .

Создайте экземпляр класса Paragraph , передав текстовое содержимое в виде строки его конструктору, как показано ниже.

String para = "Welcome to Tutorialspoint."; 
// Creating an Area Break    
Paragraph para = new Paragraph (para); 

Шаг 5: Добавление абзаца

Добавьте объект Paragraph, созданный на предыдущем шаге, с помощью метода add () класса Document , как показано ниже.

// Adding area break to the PDF 
document.add(para); 

Шаг 6: Закрытие документа

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

// Closing the document 
document.close();

пример

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

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

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

public class AddingParagraph {    
   public static void main(String args[]) throws Exception {
      // Creating a PdfWriter       
      String dest = "C:/itextExamples/addingParagraph.pdf";       
      PdfWriter writer = new PdfWriter(dest);           
      
      // Creating a PdfDocument       
      PdfDocument pdf = new PdfDocument(writer);              
      
      // Creating a Document        
      Document document = new Document(pdf);              
      String para1 = "Tutorials Point originated from the idea that there exists 
      a class of readers who respond better to online content and prefer to learn 
      new skills at their own pace from the comforts of their drawing rooms.";  
      
      String para2 = "The journey commenced with a single tutorial on HTML in 2006 
      and elated by the response it generated, we worked our way to adding fresh 
      tutorials to our repository which now proudly flaunts a wealth of tutorials 
      and allied articles on topics ranging from programming languages to web designing 
      to academics and much more.";              
      
      // Creating Paragraphs       
      Paragraph paragraph1 = new Paragraph(para1);             
      Paragraph paragraph2 = new Paragraph(para2);              
      
      // Adding paragraphs to document       
      document.add(paragraph1);       
      document.add(paragraph2);           
      
      // Closing the document       
      document.close();             
      System.out.println("Paragraph added");    
   } 
}  

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

javac AddingParagraph.java 
java AddingParagraph

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

Paragraph added

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

Добавление абзаца

iText — Добавление списка

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

Создание списка

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

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

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

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

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

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

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

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

Класс PdfDocument — это класс, который представляет документ PDF в iText, этот класс принадлежит пакету com.itextpdf.kernel.pdf . Чтобы создать экземпляр этого класса (в режиме записи), вам нужно передать объект класса PdfWriter его конструктору.

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

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

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

Шаг 3: Создание объекта Document

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

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

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

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

Класс List представляет собой серию объектов с вертикальным контуром. Он принадлежит пакету com.itextpdf.layout.element .

Создайте экземпляр класса List, как показано ниже.

// Creating a list  
List list = new List();

Шаг 5: Добавление элементов в список

Добавьте содержимое в объект списка, используя метод add () класса List , передав значения String, как показано ниже.

//  Add elements to the list 
list.add("Java"); 
list.add("JavaFX"); 
list.add("Apache Tika"); 
list.add("OpenCV");  

Шаг 6: Добавление списка в документ

Добавьте объект списка, созданный на предыдущем шаге, с помощью метода add () класса Document , как показано ниже.

// Adding list to the document 
document.add(list);

Шаг 7: Закрытие документа

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

// Closing the document 
document.close();

пример

Следующая Java-программа демонстрирует, как создать PDF-документ и добавить в него список с помощью библиотеки iText. Он создает PDF-документ с именем добавление. List.pdf , добавляет к нему список и сохраняет его по пути C: / itextExamples / .

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

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

import com.itextpdf.layout.Document; 
import com.itextpdf.layout.element.List; 
import com.itextpdf.layout.element.Paragraph;  

public class AddingList {      
   public static void main(String args[]) throws Exception {               
      // Creating a PdfWriter
      String dest = "C:/itextExamples/addngList.pdf";       
      PdfWriter writer = new PdfWriter(dest);              
   
      // Creating a PdfDocument       
      PdfDocument pdf = new PdfDocument(writer);              
   
      // Creating a Document        
      Document document = new Document(pdf);              
   
      // Creating a Paragraph       
      Paragraph paragraph = new Paragraph("Tutorials Point provides the following tutorials");
      
      // Creating a list
      List list = new List();  
      
      // Add elements to the list       
      list.add("Java");       
      list.add("JavaFX");      
      list.add("Apache Tika");       
      list.add("OpenCV");       
      list.add("WebGL");       
      list.add("Coffee Script");       
      list.add("Java RMI");       
      list.add("Apache Pig");              
      
      // Adding paragraph to the document       
      document.add(paragraph);                    
     
      // Adding list to the document       
      document.add(list);
      
      // Closing the document       
      document.close();              
      System.out.println("List added");    
   } 
} 

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

javac AddingList.java 
java AddingList

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

List added

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

Добавление списка

iText — Добавление таблицы

В этой главе мы увидим, как создать PDF-документ и добавить в него таблицу с помощью библиотеки iText.

Добавление таблицы в PDF

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

Ниже приведены шаги для создания документа PDF с таблицей в нем.

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

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

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

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

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

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

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

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

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

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

Шаг 3: Создание объекта Document

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

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

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

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

Класс Table представляет собой двумерную сетку, заполненную ячейками, упорядоченными по строкам и столбцам. Он принадлежит пакету com.itextpdf.layout.element .

Создайте класс Table, как показано ниже.

// Creating a table object 
float [] pointColumnWidths = {150F, 150F, 150F}; 
Table table = new Table(pointColumnWidths); 

Шаг 5: Добавление ячеек в таблицу

Создайте объект ячейки, создав экземпляр класса Cell пакета com.itextpdf.layout.element . Добавьте содержимое ячейки, используя метод add () этого класса.

Наконец, чтобы добавить эту ячейку в таблицу, вызовите метод addCell () класса Table и передайте объект ячейки в качестве параметра этому методу, как показано ниже.

// Adding cell 1 to the table 
Cell cell1 = new Cell();   // Creating a cell 
cell1.add("Name");         // Adding content to the cell 
table.addCell(cell1);      // Adding cell to the table       

// Adding cell 2 to the table Cell 
cell2 = new Cell();       // Creating a cell 
cell2.add("Raju");        // Adding content to the cell 
table.addCell(cell2);     // Adding cell to the table 

Шаг 6: Добавление таблицы в документ

Добавьте объект таблицы, созданный на предыдущем шаге, используя метод add () класса Document, как показано ниже.

// Adding list to the document 
document.add(table);

Шаг 7: Закрытие документа

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

// Closing the document 
document.close(); 

пример

Следующая Java-программа демонстрирует, как создать PDF-документ и добавить в него таблицу с помощью библиотеки iText. Он создает документ в формате PDF с именем добавление Table.pdf , добавляет к нему таблицу и сохраняет его по пути C: / itextExamples /.

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

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

import com.itextpdf.layout.Document; 
import com.itextpdf.layout.element.Cell; 
import com.itextpdf.layout.element.Table;  

public class AddingTable {      
   public static void main(String args[]) throws Exception {           
      // Creating a PdfDocument object   
      String dest = "C:/itextExamples/addingTable.pdf";   
      PdfWriter writer = new PdfWriter(dest);       
         
      // Creating a PdfDocument object      
      PdfDocument pdf = new PdfDocument(writer);                  
      
      // Creating a Document object       
      Document doc = new Document(pdf);                       
         
      // Creating a table       
      float [] pointColumnWidths = {150F, 150F, 150F};   
      Table table = new Table(pointColumnWidths);    
      
      // Adding cells to the table       
      table.addCell(new Cell().add("Name"));       
      table.addCell(new Cell().add("Raju"));       
      table.addCell(new Cell().add("Id"));       
      table.addCell(new Cell().add("1001"));       
      table.addCell(new Cell().add("Designation"));       
      table.addCell(new Cell().add("Programmer"));                 
         
      // Adding Table to document        
      doc.add(table);                  
         
      // Closing the document       
      doc.close();
      System.out.println("Table created successfully..");   
   }     
}

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

javac AddingTable.java 
java AddingTable

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

Table created successfully..

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

Добавление таблицы

iText — Форматирование содержимого ячейки

В этой главе мы увидим, как создать PDF-документ, добавить таблицу и отформатировать содержимое ячейки в таблице с помощью библиотеки iText.

Форматирование ячеек в таблице

Вы можете создать пустой PDF- документ, создав экземпляр класса Document. При создании экземпляра этого класса вам необходимо передать объект PdfDocument в качестве параметра его конструктору. Затем, чтобы добавить таблицу в документ, вам нужно создать экземпляр класса Table и добавить этот объект в документ с помощью метода add () . Вы можете отформатировать содержимое ячейки в таблице, используя методы класса Cell .

Ниже приведены шаги для форматирования содержимого ячейки в таблице.

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

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

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

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

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

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

Класс PdfDocument — это класс, который представляет PDFDocument в iText. Этот класс принадлежит пакету com.itextpdf.kernel.pdf . Чтобы создать экземпляр этого класса (в режиме записи), вам нужно передать объект класса PdfWriter его конструктору.

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

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

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

Шаг 3: Создание объекта Document

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

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

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

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

Класс Table представляет собой двумерную сетку, заполненную ячейками, упорядоченными по строкам и столбцам. Он принадлежит пакету com.itextpdf.layout.element .

Создайте класс Table, как показано ниже.

// Creating a table 
float [] pointColumnWidths = {200F, 200F}; 
Table table = new Table(pointColumnWidths); 

Шаг 5: Создание ячеек

Создайте объект ячейки, создав экземпляр класса Cell пакета com.itextpdf.layout.element . Добавьте содержимое ячейки, используя метод add () класса Cell , как показано ниже.

// Adding cell 1 to the table 
Cell cell1 = new Cell();     // Creating a cell 
cell1.add("Name");           // Adding content to the cell       

// Adding cell 2 to the table 
Cell cell2 = new Cell();     // Creating a cell 
cell2.add("Raju");           // Adding content to the cell 

Шаг 6: Добавление фона в ячейку

Создав ячейку и добавив в нее содержимое, вы можете отформатировать ячейку. Например, вы можете установить его фон, выровнять текст внутри ячейки, изменить цвет текста и т. Д., Используя различные методы класса ячейки, такие как setBackgroundColor (), setBorder (), setTextAlignment () .

Вы можете установить цвет фона, границы и выравнивание текста в ячейке, созданной на предыдущем шаге, как показано ниже.

c1.setBackgroundColor(Color.DARK_GRAY);    // Setting background color to cell1 
c1.setBorder(Border.NO_BORDER);            // Setting border to cell1 
c1.setTextAlignment(TextAlignment.CENTER); // Setting text alignment to cell1 

Шаг 7: Добавление ячейки в таблицу

Наконец, чтобы добавить эту ячейку в таблицу, вызовите метод addCell () класса Table и передайте объект ячейки в качестве параметра этому методу, как показано ниже.

table.addCell(c1);

Шаг 8: Добавление таблицы в документ

Добавьте объект таблицы, созданный на предыдущем шаге, используя метод add () класса Document, как показано ниже.

// Adding list to the document 
document.add(table);

Шаг 9: Закрытие документа

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

// Closing the document 
document.close();

пример

Следующая программа на Java демонстрирует, как форматировать содержимое ячейки в таблице с помощью библиотеки iText. Он создает документ PDF с именем добавлениеBackground.pdf , добавляет к нему таблицу, форматирует содержимое его ячеек и сохраняет его по пути C: / itextExamples /

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

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

import com.itextpdf.layout.Document;
import com.itextpdf.layout.border.Border; 
import com.itextpdf.layout.element.Cell; 
import com.itextpdf.layout.element.Table; 
import com.itextpdf.layout.property.TextAlignment;  

public class BackgroundToTable {      
   public static void main(String args[]) throws Exception {        
      // Creating a PdfWriter object   
      String dest = "C:/itextExamples/addingBackground.pdf";   
      PdfWriter writer = new PdfWriter(dest);                  
      
      // Creating a PdfDocument object       
      PdfDocument pdfDoc = new PdfDocument(writer);                   
      
      // Creating a Document object      
      Document doc = new Document(pdfDoc); 
      
      // Creating a table       
      float [] pointColumnWidths = {200F, 200F};       
      Table table = new Table(pointColumnWidths);
      
      // Populating row 1 and adding it to the table               
      Cell c1 = new Cell();                        // Creating cell 1 
      c1.add("Name");                              // Adding name to cell 1   
      c1.setBackgroundColor(Color.DARK_GRAY);      // Setting background color
      c1.setBorder(Border.NO_BORDER);              // Setting border
      c1.setTextAlignment(TextAlignment.CENTER);   // Setting text alignment      
      table.addCell(c1);                           // Adding cell 1 to the table 
      
      Cell c2 = new 
      Cell();                               
      c2.add("Raju");       
      c2.setBackgroundColor(Color.GRAY);       
      c2.setBorder(Border.NO_BORDER);       
      c2.setTextAlignment(TextAlignment.CENTER);      
      table.addCell(c2);      
      
      // Populating row 2 and adding it to the table               
      Cell c3 = new Cell();       
      c3.add("Id");       
      c3.setBackgroundColor(Color.WHITE);       
      c3.setBorder(Border.NO_BORDER);       
      c3.setTextAlignment(TextAlignment.CENTER);      
      table.addCell(c3);                          
      
      Cell c4 = new Cell();       
      c4.add("001");       
      c4.setBackgroundColor(Color.WHITE);       
      c4.setBorder(Border.NO_BORDER);       
      c4.setTextAlignment(TextAlignment.CENTER);      
      table.addCell(c4);                          
      
      // Populating row 3 and adding it to the table        
      Cell c5 = new Cell();       
      c5.add("Designation");       
      c5.setBackgroundColor(Color.DARK_GRAY);       
      c5.setBorder(Border.NO_BORDER);       
      c5.setTextAlignment(TextAlignment.CENTER);      
      table.addCell(c5);                 
      
      Cell c6 = new Cell(); 
      c6.add("Programmer");       
      c6.setBackgroundColor(Color.GRAY);       
      c6.setBorder(Border.NO_BORDER);       
      c6.setTextAlignment(TextAlignment.CENTER);       
      table.addCell(c6);                              
      
      // Adding Table to document        
      doc.add(table);                  
      
      // Closing the document       
      doc.close();  
      
      System.out.println("Background added successfully..");     
   } 
} 

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

javac BackgroundToTable.java 
java BackgroundToTable 

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

Background added successfully..

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

Добавление фона

iText — форматирование границ ячейки

В этой главе мы увидим, как форматировать границы ячейки в таблице с помощью библиотеки iText.

Форматирование границ ячейки

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

Затем, чтобы добавить таблицу в документ, вам нужно создать экземпляр класса Table и добавить этот объект в документ с помощью метода add () .

Вы можете добавлять различные типы границ, таких как DashedBorder, SolidBorder, DottedBorder, DoubleBorder, RoundDotsBorder и т. Д. С различными цветами, используя метод setBorder () класса Cell .

Ниже приведены шаги для форматирования границ ячейки в таблице.

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

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

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

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

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

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

Класс PdfDocument — это класс, который представляет PDFDocument в iText. Этот класс принадлежит пакету com.itextpdf.kernel.pdf . Чтобы создать экземпляр этого класса (в режиме записи), вам нужно передать объект класса PdfWriter его конструктору.

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

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

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

Шаг 3: Создание объекта Document

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

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

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

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

Класс Table представляет собой двумерную сетку, заполненную ячейками, упорядоченными по строкам и столбцам. Он принадлежит пакету com.itextpdf.layout.element .

Создайте класс Table, как показано ниже.

// Creating a table 
float [] pointColumnWidths = {200F, 200F}; 
Table table = new Table(pointColumnWidths); 

Шаг 5: Создание ячеек

Создайте объект ячейки, создав экземпляр класса Cell пакета com.itextpdf.layout.element и добавьте содержимое ячейки с помощью метода add () класса Cell , как показано ниже.

// Adding cell 1 to the table 
Cell cell1 = new Cell(); // Creating a cell 
cell1.add("Name");       // Adding content to the cell 

Шаг 6: Форматирование границы ячейки

Библиотека iText предоставляет различные классы, представляющие границу, такие как DashedBorder, SolidBorder, DottedBorder, DoubleBorder, RoundDotsBorder и т. Д.

Конструкторы этих классов принимают два параметра: цветовой объект, представляющий цвет границы, и целое число, представляющее ширину границы.

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

Border b1 = new DashedBorder(Color.RED, 3); 

Теперь установите границу ячейки, используя метод setBorder () класса ячейки . Этот метод принимает объект типа Border в качестве параметра.

Установите границу ячейки, передав выше созданный объект Border в качестве параметра методу setBorder (), как показано ниже.

c1.setBorder(b1)

Наконец, чтобы добавить эту ячейку в таблицу, вызовите метод addCell () класса Table и передайте объект ячейки в качестве параметра этому методу, как показано ниже.

table.addCell(c1);

Шаг 7: Добавление таблицы в документ

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

// Adding list to the document 
document.add(table);

Шаг 8: Закрытие документа

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

// Closing the document 
document.close();

пример

Следующая программа на Java демонстрирует, как форматировать границу ячейки в таблице с помощью библиотеки iText. Он создает документ PDF с именем colorBorders.pdf , добавляет к нему таблицу, форматирует содержимое его ячеек и сохраняет его по пути C: / itextExamples /

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

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

import com.itextpdf.layout.Document; 
import com.itextpdf.layout.border.Border; 
import com.itextpdf.layout.border.DashedBorder; 
import com.itextpdf.layout.border.DottedBorder; 
import com.itextpdf.layout.border.DoubleBorder; 
import com.itextpdf.layout.border.RoundDotsBorder; 
import com.itextpdf.layout.border.SolidBorder; 

import com.itextpdf.layout.element.Cell; 
import com.itextpdf.layout.element.Table; 
import com.itextpdf.layout.property.TextAlignment;  

public class FormatedBorders {      
   public static void main(String args[]) throws Exception {
      // Creating a PdfWriter object   
      String dest = "C:/itextExamples/coloredBorders.pdf";   
      
      PdfWriter writer = new 
      PdfWriter(dest);                 

      // Creating a PdfDocument object       
      PdfDocument pdfDoc = new PdfDocument(writer);                      
   
      // Creating a Document object      
      Document doc = new Document(pdfDoc);                            
   
      // Creating a table       
      float [] pointColumnWidths = {200F, 200F};       
      Table table = new Table(pointColumnWidths); 
   
      // Adding row 1 to the table
      Cell c1 = new Cell();
      
      // Adding the contents of the cell
      c1.add("Name");
   
      // Setting the back ground color of the cell
      c1.setBackgroundColor(Color.DARK_GRAY);    
   
      // Instantiating the Border class 
      Border b1 = new DashedBorder(Color.RED, 3);
   
      // Setting the border of the cell
      c1.setBorder(b1);
      
      // Setting the text alignment       
      c1.setTextAlignment(TextAlignment.CENTER);
   
      // Adding the cell to the table       
      table.addCell(c1);                          
      Cell c2 = new Cell();       
      c2.add("Raju");       
      c1.setBorder(new SolidBorder(Color.RED, 3));       
      c2.setTextAlignment(TextAlignment.CENTER);       
      table.addCell(c2);
   
      // Adding row 2 to the table                
      Cell c3 = new Cell();      
      c3.add("Id"); 
      c3.setBorder(new DottedBorder(Color.DARK_GRAY, 3));       
      c3.setTextAlignment(TextAlignment.CENTER);      
      table.addCell(c3);                          
      
      Cell c4 = new Cell();       
      c4.add("001");       
      c4.setBorder(new DoubleBorder(Color.DARK_GRAY, 3));       
      c4.setTextAlignment(TextAlignment.CENTER);       
      table.addCell(c4);                          
      
      // Adding row 3 to the table       
      Cell c5 = new Cell();       
      c5.add("Designation");       
      c5.setBorder(new RoundDotsBorder(Color.RED, 3));       
      c5.setTextAlignment(TextAlignment.CENTER);       
      table.addCell(c5);                 
      
      Cell c6 = new Cell();       
      c6.add("Programmer");       
      c6.setBorder(new RoundDotsBorder(Color.RED, 3)); 
      c6.setTextAlignment(TextAlignment.CENTER);      
      table.addCell(c6);                              
      
      // Adding Table to document        
      doc.add(table);                  
      
      // Closing the document       
      doc.close();  
      
      System.out.println("Borders added successfully..");     
   } 
} 

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

javac FormatedBorders.java 
java FormatedBorders

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

Borders added successfully

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

Цветные границы

iText — Добавление изображения в таблицу

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

Добавление изображения в таблицу

Вы можете создать пустой документ PDF, создав экземпляр класса Document . При создании экземпляра этого класса вам необходимо передать объект PdfDocument в качестве параметра его конструктору. Затем, чтобы добавить таблицу в документ, вам нужно создать экземпляр класса Table и добавить этот объект в документ с помощью метода add () .

Чтобы добавить изображение в эту таблицу, необходимо создать экземпляр класса Cell , создать и добавить объект изображения, который требуется добавить, добавить изображение в объект ячейки с помощью метода add () класса Cell .

Ниже приведены шаги для вставки изображения в ячейку таблицы.

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

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

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

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

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

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

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

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

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

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

Шаг 3: Создание объекта Document

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

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

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

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

Класс Table представляет собой двумерную сетку, заполненную ячейками, упорядоченными по строкам и столбцам. Он принадлежит пакету com.itextpdf.layout.element .

Создайте класс Table, как показано ниже.

// Creating a table 
float [] pointColumnWidths = {200F, 200F}; 
Table table = new Table(pointColumnWidths); 

Шаг 5: Создание ячейки

Создайте объект ячейки, создав экземпляр класса Cell пакета com.itextpdf.layout , как показано ниже.

// Adding cell to the table
Cell cell = new Cell();  // Creating a cell 

Шаг 6: Создание изображения

Для создания объекта изображения , прежде всего, создайте объект ImageData с помощью метода create () класса ImageDataFactory . В качестве параметра этого метода передайте строковый параметр, представляющий путь к изображению, как показано ниже.

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

Теперь создайте экземпляр класса Image пакета com.itextpdf.layout.element . При создании экземпляра передайте созданный выше объект ImageData в качестве параметра его конструктору, как показано ниже.

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

Добавьте объект изображения в ячейку, используя метод add () класса ячейки, как показано ниже.

// Adding image to the cell  
cell.add(img.setAutoScale(true)); 

Шаг 7: Добавление ячейки в таблицу

Наконец, чтобы добавить эту ячейку в таблицу, вызовите метод addCell () класса Table и передайте объект ячейки в качестве параметра этому методу, как показано ниже.

table.addCell(cell);

Шаг 8: Добавление таблицы в документ

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

// Adding list to the document 
document.add(table);

Шаг 9: Закрытие документа

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

// Closing the document 
document.close(); 

пример

Следующая программа на Java демонстрирует, как добавить изображение в ячейку таблицы в документе PDF с помощью библиотеки iText. Он создает документ PDF с именем добавление изображения.pdf , добавляет к нему таблицу, вставляет изображение (javafxLogo.jpg) в одну из его ячеек и сохраняет его по пути C: / itextExamples / .

Сохраните этот код в файле с именем AddingImageToTable.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.Cell; 
import com.itextpdf.layout.element.Image; 
import com.itextpdf.layout.element.Table;  

public class a3AddingImageToTable {
   public static void main(String args[]) throws Exception {
      // Creating a PdfWriter object 
      String dest = "C:/itextExamples/addingImage.pdf";
      PdfWriter writer = new PdfWriter(dest);    
      
      // Creating a PdfDocument object   
      PdfDocument pdfDoc = new PdfDocument(writer);
      
      // Creating a Document object
      Document doc = new Document(pdfDoc);
      
      // Creating a table
      float [] pointColumnWidths = {150f, 150f};
      Table table = new Table(pointColumnWidths);
      
      // Populating row 1 and adding it to the table
      Cell cell1 = new Cell();
      cell1.add("Tutorial ID");
      table.addCell(cell1);
      
      Cell cell2 = new Cell();
      cell2.add("1");
      table.addCell(cell2);
      
      // Populating row 2 and adding it to the table
      Cell cell3 = new Cell();
      cell3.add("Tutorial Title");
      table.addCell(cell3);             
      
      Cell cell4 = new Cell(); 
      cell4.add("JavaFX");  
      table.addCell(cell4);
      
      // Populating row 3 and adding it to the table
      Cell cell5 = new Cell();
      cell5.add("Tutorial Author");
      table.addCell(cell5);            
      
      Cell cell6 = new Cell();
      cell6.add("Krishna Kasyap");
      table.addCell(cell6);
      
      // Populating row 4 and adding it to the table
      Cell cell7 = new Cell();
      cell7.add("Submission date");
      table.addCell(cell7);
      
      Cell cell8 = new Cell();
      cell8.add("2016-07-06");
      table.addCell(cell8);              
      
      // Populating row 5 and adding it to the table
      Cell cell9 = new Cell();
      cell9.add("Tutorial Icon");
      table.addCell(cell9);              
      
      // Creating the cell10       
      Cell cell10 = new Cell();              
      
      // Creating an ImageData object       
      String imageFile = "C:/itextExamples/javafxLogo.jpg";       
      ImageData data = ImageDataFactory.create(imageFile);        

      // Creating the image       
      Image img = new Image(data);              

      // Adding image to the cell10       
      cell10.add(img.setAutoScale(true));        

      // Adding cell110 to the table       
      table.addCell(cell10);                         
      
      // Adding Table to document        
      doc.add(table);                  
      
      // Closing the document       
      doc.close();  
      
      System.out.println("Image added to table successfully..");     
   } 
}  

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

javac AddingImageToTable.java 
java AddingImageToTable 

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

Image added to table successfully..

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

Добавление изображения в таблицу

iText — Вложенный Стол

В этой главе мы увидим, как добавить вложенную таблицу в таблицу в документе PDF с помощью библиотеки iText.

Добавление вложенных таблиц в PDF

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

Чтобы добавить таблицу в эту таблицу, необходимо создать другую таблицу (вложенную таблицу) и передать ее объекту ячейки с помощью метода add () класса Cell .

Ниже приведены шаги для вставки таблицы в ячейку таблицы.

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

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

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

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

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

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

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

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

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

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

Шаг 3: Создание объекта Document

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

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

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

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

Класс Table представляет собой двумерную сетку, заполненную ячейками, упорядоченными по строкам и столбцам. Он принадлежит пакету com.itextpdf.layout.element .

Создайте класс Table, как показано ниже.

// Creating a table 
float [] pointColumnWidths = {200F, 200F}; 
Table table = new Table(pointColumnWidths); 

Шаг 5: Создание ячейки

Создайте объект ячейки, создав экземпляр класса Cell пакета com.itextpdf.layout , как показано ниже.

// Adding cell to the table 
Cell contact = new Cell();    // Creating a cell 

Шаг 6: Создание вложенной таблицы

После создания ячейки создайте вложенную таблицу и заполните ее ячейки, как показано ниже.

// Creating nested table for contact   
float [] pointColumnWidths2 = {150f, 150f}; 
Table nestedTable = new Table(pointColumnWidths2);    

// Populating row 1 and adding it to the nested table  
Cell nested1 = new Cell(); 
nested1.add("Phone"); 
nestedTable.addCell(nested1);       

Cell nested2 = new Cell(); 
nested2.add("9848022338"); 
nestedTable.addCell(nested2);  

// Populating row 2 and adding it to the nested table  
Cell nested3 = new Cell(); 
nested3.add("email"); 
nestedTable.addCell(nested3);

Cell nested4 = new Cell(); 
nested4.add("[email protected]"); 
nestedTable.addCell(nested4);     

// Populating row 3 and adding it to the nested table  
Cell nested5 = new Cell(); 
nested5.add("Address"); 
nestedTable.addCell(nested5);  

Cell nested6 = new Cell(); 
nested6.add("Hyderabad"); 
nestedTable.addCell(nested6);  

Шаг 7: Добавление вложенной таблицы в ячейку

Теперь добавьте созданную выше вложенную таблицу в ячейку родительской (контейнерной) таблицы, используя метод add () класса Cell . И добавьте эту ячейку в родительскую таблицу, используя метод addCell () класса Table , как показано ниже.

contact.add(nestedTable); 
table.addCell(contact);

Шаг 8: Добавление таблицы в документ

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

// Adding list to the document 
document.add(table); 

Шаг 9: Закрытие документа

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

// Closing the document 
document.close();

пример

Следующая программа на Java демонстрирует, как добавить таблицу в ячейку таблицы (вложенная таблица) в документе PDF с помощью библиотеки iText. Он создает документ PDF с именем добавлениеNestedTable.pdf , добавляет к нему таблицу, вставляет другую таблицу в одну из ее ячеек и сохраняет ее по пути C: / itextExamples / .

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

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

import com.itextpdf.layout.Document; 
import com.itextpdf.layout.element.Cell; 
import com.itextpdf.layout.element.Table;  

public class a4AddNestedTablesPdf {  
   public static void main(String args[]) throws Exception {                        
      // Creating a PdfWriter object   
      String dest = "C:/itextExamples/addingNestedTable.pdf";   
      PdfWriter writer = new PdfWriter(dest);                  
   
      // Creating a PdfDocument object       
      PdfDocument pdfDoc = new PdfDocument(writer);                      
   
      // Creating a Document object       
      Document doc = new Document(pdfDoc);                            
   
      // Creating a table       
      float [] pointColumnWidths1 = {150f, 150f};       
      Table table = new Table(pointColumnWidths1);                             
      
      // Populating row 1 and adding it to the table          
      Cell cell1 = new Cell();       
      cell1.add("Name");       
      table.addCell(cell1);             
      
      Cell cell2 = new Cell();       
      cell2.add("Raju");       
      table.addCell(cell2);                          
   
      // Populating row 2 and adding it to the table        
      Cell cell3 = new Cell();       
      cell3.add("Id");       
      table.addCell(cell3);             
      
      Cell cell4 = new Cell();       
      cell4.add("1001");       
      table.addCell(cell4);                    
   
      // Populating row 3 and adding it to the table        
      Cell cell5 = new Cell();       
      cell5.add("Designation");       
      table.addCell(cell5); 
      
      Cell cell6 = new Cell();       
      cell6.add("Programmer");       
      table.addCell(cell6);              
   
      // Creating nested table for contact         
      float [] pointColumnWidths2 = {150f, 150f};       
      Table nestedTable = new Table(pointColumnWidths2);                
      
      // Populating row 1 and adding it to the nested table        
      Cell nested1 = new Cell();       
      nested1.add("Phone");       
      nestedTable.addCell(nested1);                   
      
      Cell nested2 = new Cell();       
      nested2.add("9848022338");       
      nestedTable.addCell(nested2);                   
      
      // Populating row 2 and adding it to the nested table        
      Cell nested3 = new Cell();       
      nested3.add("email");       
      nestedTable.addCell(nested3);                    
      
      Cell nested4 = new Cell();       
      nested4.add("[email protected]");       
      nestedTable.addCell(nested4);                       
      
      // Populating row 3 and adding it to the nested table        
      Cell nested5 = new Cell();       
      nested5.add("Address");       
      nestedTable.addCell(nested5);                    
      
      Cell nested6 = new Cell();       
      nested6.add("Hyderabad");       
      nestedTable.addCell(nested6);              
      
      // Adding table to the cell       
      Cell cell7 = new Cell();       
      cell7.add("Contact");       
      table.addCell(cell7);              
      
      Cell cell8 = new Cell();       
      cell8.add(nestedTable);       
      table.addCell(cell8);
      
      // Adding table to the document       
      doc.add(table);                   
      
      // Closing the document               
      doc.close();  
      System.out.println("Nested Table Added successfully..");     
   } 
}    

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

javac AddNestedTable.java 
java AddNestedTable 

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

Nested Table Added successfully..

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

Добавление вложенной таблицы

iText — Добавление списков в таблицу

В этой главе мы увидим, как добавить список в таблицу в документе PDF с помощью библиотеки iText.

Добавление списков в таблицу в PDF

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

Чтобы добавить список в таблицу, необходимо создать экземпляр класса List пакета com.itextpdf.layout.element и вставить его в объект ячейки с помощью метода add () класса Cell .

Ниже приведены шаги для добавления списка в ячейку таблицы.

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

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

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

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

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

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

Класс PdfDocument — это класс, который представляет документ PDF в iText. Этот класс относится к пакету c om.itextpdf.kernel.pdf . Чтобы создать экземпляр этого класса (в режиме записи), вам нужно передать объект класса PdfWriter его конструктору.

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

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

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

Шаг 3: Создание объекта Document

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

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

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

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

Класс Table представляет собой двумерную сетку, заполненную ячейками, упорядоченными по строкам и столбцам. Он принадлежит пакету com.itextpdf.layout.element .

Создайте класс Table, как показано ниже.

// Creating a table 
float [] pointColumnWidths = {200F, 200F}; 
Table table = new Table(pointColumnWidths); 

Шаг 5: Создание ячейки

Создайте объект ячейки, создав экземпляр класса Cell пакета com.itextpdf.layout , как показано ниже.

// Adding cell to the table 
Cell listCell = new Cell(); // Creating a cell 

Шаг 6: Создание объекта List

После создания ячейки создайте объект списка , создав экземпляр класса List пакета com.itextpdf.layout.element . Создайте элементы списка путем создания экземпляра класса ListItem и добавьте созданные элементы с помощью метода add () класса List , как показано ниже.

List list = new List(); 
ListItem item1 = new ListItem("JavaFX"); 
ListItem item2 = new ListItem("Java"); 
ListItem item3 = new ListItem("Java Servlets");        
list.add(item1); 
list.add(item2); 
list.add(item3); 

Шаг 7: Добавление списка в ячейку таблицы

Теперь добавьте созданный выше список в ячейку таблицы, используя метод add () класса Cell. И добавьте эту ячейку в таблицу, используя метод addCell () класса Table , как показано ниже.

listCell.add(list); 
table.addCell(listCell);

Шаг 8: Добавление таблицы в документ

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

// Adding list to the document 
document.add(table);

Шаг 9: Закрытие документа

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

// Closing the document 
document.close(); 

пример

Следующая программа на Java демонстрирует, как добавить список в ячейку таблицы в документе PDF с помощью библиотеки iText. Он создает документ PDF с именем добавлениеObjects.pdf , добавляет к нему таблицу, вставляет список в одну из ее ячеек и сохраняет его по пути C: / itextExamples /

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

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

import com.itextpdf.layout.Document; 
import com.itextpdf.layout.element.Cell; 
import com.itextpdf.layout.element.List; 
import com.itextpdf.layout.element.ListItem; 
import com.itextpdf.layout.element.Table; 
import com.itextpdf.layout.property.TextAlignment;  

public class AddingListsToTable {      
   public static void main(String args[]) throws Exception {              
      // Creating a PdfWriter object
      String file = "C:/itextExamples/addingObjects.pdf";       
      PdfDocument pdfDoc = new PdfDocument(new PdfWriter(file));                   
      
      // Creating a Document object       
      Document doc = new Document(pdfDoc);               
      
      // Creating a table       
      float [] pointColumnWidths = {300F, 300F};       
      Table table = new Table(pointColumnWidths);                            
      
      // Adding row 1 to the table                
      Cell c1 = new Cell();       
      c1.add("Java Related Tutorials");       
      c1.setTextAlignment(TextAlignment.LEFT);       
      table.addCell(c1);                      
      
      List list1 = new List();       
      ListItem item1 = new ListItem("JavaFX");
      ListItem item2 = new ListItem("Java");       
      ListItem item3 = new ListItem("Java Servlets");              
      list1.add(item1);       
      list1.add(item2);       
      list1.add(item3);                 
      
      Cell c2 = new Cell();       
      c2.add(list1);       
      c2.setTextAlignment(TextAlignment.LEFT);       
      table.addCell(c2);                 
      
      // Adding row 2 to the table                
      Cell c3 = new Cell();       
      c3.add("No SQL Databases");       
      c3.setTextAlignment(TextAlignment.LEFT);       
      table.addCell(c3);                     
      
      List list2 = new List();       
      list2.add(new ListItem("HBase"));       
      list2.add(new ListItem("Neo4j"));       
      list2.add(new ListItem("MongoDB"));                 
      
      Cell c4 = new Cell();       
      c4.add(list2); 
      c4.setTextAlignment(TextAlignment.LEFT);       
      table.addCell(c4);                       
      
      // Adding Table to document        
      doc.add(table);                  
      
      // Closing the document       
      doc.close();  
      System.out.println("Lists added to table successfully..");     
   } 
}  

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

javac AddingListsToTable.java 
java AddingListsToTable

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

Lists added to table successfully..

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

Добавление объектов

iText — Добавление изображения в PDF

В этой главе мы увидим, как добавить изображение в документ PDF с помощью библиотеки iText.

Добавление изображения в PDF

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

Ниже приведены инструкции по добавлению изображения в документ PDF.

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

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

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

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

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

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

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

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

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

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

Шаг 3: Создание объекта Document

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

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

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

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

Для создания объекта изображения , прежде всего, создайте объект ImageData с помощью метода create () класса ImageDataFactory . В качестве параметра этого метода передайте строковый параметр, представляющий путь к изображению, как показано ниже.

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

Теперь создайте экземпляр класса Image пакета com.itextpdf.layout.element . При создании экземпляра передайте созданный выше объект ImageData в качестве параметра его конструктору, как показано ниже.

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

Шаг 5: Добавление изображения в документ

Добавьте объект изображения, созданный на предыдущем шаге, с помощью метода add () класса Document , как показано ниже.

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

Шаг 6: Закрытие документа

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

// Closing the document 
document.close(); 

пример

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

Сохраните этот код в файле с именем AddingImage.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 AddingImage {      
   public static void main(String args[]) throws Exception {              
      
      // Creating a PdfWriter       
      String dest = "C:/itextExamples/addingImage.pdf";       
      PdfWriter writer = new PdfWriter(dest);        
      
      // Creating a PdfDocument       
      PdfDocument pdf = new PdfDocument(writer);              
      
      // Creating a Document        
      Document document = new Document(pdf);              
      
      // Creating an ImageData object       
      String imFile = "C:/itextExamples/logo.jpg";       
      ImageData data = ImageDataFactory.create(imFile);              
      
      // Creating an Image object        
      Image image = new Image(data);                        
      
      // Adding image to the document       
      document.add(image);              
      
      // Closing the document       
      document.close();              
      
      System.out.println("Image added");    
   } 
}  

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

javac AddingImage.java 
java AddingImage

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

Image added

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

Добавление изображения

iText — установка положения изображения

В этой главе мы увидим, как установить положение изображения в документе PDF с помощью библиотеки iText.

Установка положения изображения

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

Чтобы добавить изображение в pdf, создайте и добавьте объект изображения, который требуется добавить, и добавьте его с помощью метода add () класса Document . Вы можете вставить изображение в нужную позицию в документе, используя метод setFixedPosition () класса Image .

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

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

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

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

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

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

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

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

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

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

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

Шаг 3: Создание объекта Document

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

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

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

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

Для создания объекта изображения, прежде всего, создайте объект ImageData с помощью метода create () класса ImageDataFactory . В качестве параметра этого метода передайте строковый параметр, представляющий путь к изображению, как показано ниже.

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

Теперь создайте экземпляр класса Image пакета com.itextpdf.layout.element . При создании экземпляра передайте объект ImageData в качестве параметра его конструктору, как показано ниже.

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

Шаг 5: Установка положения изображения

Вы можете установить положение изображения в документе PDF, используя метод ImageFixedPosition () изображения. С помощью этого метода установите положение изображения в координатах (100, 250) на документе, как показано ниже.

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

Шаг 6: Добавление изображения в документ

Теперь добавьте объект изображения, созданный на предыдущем шаге, используя метод add () класса Document , как показано ниже.

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

Шаг 7: Закрытие документа

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

// Closing the document 
document.close(); 

пример

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

Сохраните этот код в файле с именем 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");    
   } 
}

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

javac SettingPosition.java 
java SettingPosition 

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

Image added

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

Положение изображения

iText — масштабирование изображения

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

Масштабирование изображения в PDF

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

Чтобы добавить изображение в PDF, создайте объект изображения, который требуется добавить, и добавьте его с помощью метода add () класса Document . Вы можете масштабировать изображение, используя метод setAutoScale () .

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

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

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

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

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

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

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

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

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

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

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

Шаг 3: Создание объекта Document

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

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

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

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

Для создания объекта изображения, прежде всего, создайте объект ImageData с помощью метода create () класса ImageDataFactory . В качестве параметра этого метода передайте строковый параметр, представляющий путь к изображению, как показано ниже.

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

Теперь создайте экземпляр класса Image пакета com.itextpdf.layout.element . При создании экземпляра передайте объект ImageData в качестве параметра его конструктору, как показано ниже.

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

Шаг 5: Масштабирование изображения

Вы можете масштабировать изображение, используя метод setAutoScale () .

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

Шаг 6: Добавление изображения в документ

Теперь добавьте объект изображения, созданный на предыдущем шаге, используя метод add () класса Document , как показано ниже.

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

Шаг 7: Закрытие документа

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

// Closing the document 
document.close(); 

пример

Следующая программа на Java демонстрирует, как масштабировать изображение в соответствии с размером документа в документе PDF с помощью библиотеки iText. Он создает документ PDF с именем autoScale.pdf , добавляет к нему изображение, масштабирует его по размерам страницы, сохраняет его по пути C: / itextExamples / .

Сохраните этот код в файле с именем SettingAutoScale.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 SettingAutoScale {      
   public static void main(String args[]) throws Exception{              
      // Creating a PdfWriter       
      String dest = "C:/itextExamples/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:/itextExamples/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 Scaled");    
   } 
}  

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

javac SettingAutoScale.java 
java SettingAutoScale 

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

Image Scaled

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

Авто Масштаб

iText — Поворот изображения

В этой главе мы увидим, как вставить изображение в PDF-документ и как повернуть его, используя функции, доступные в библиотеке iText.

Поворот изображения в PDF

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

Чтобы добавить изображение в PDF, создайте объект изображения, который требуется добавить, и добавьте его с помощью метода add () класса Document . Вы можете повернуть изображение с помощью метода setRotationAngle () .

Ниже приведены шаги для поворота изображения в документе PDF.

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

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

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

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

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

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

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

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

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

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

Шаг 3: Создание объекта Document

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

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

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

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

Для создания объекта изображения, прежде всего, создайте объект ImageData с помощью метода create () класса ImageDataFactory . В качестве параметра этого метода передайте строковый параметр, представляющий путь к изображению, как показано ниже.

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

Теперь создайте экземпляр класса Image пакета com.itextpdf.layout.element . При создании экземпляра передайте объект ImageData в качестве параметра его конструктору, как показано ниже.

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

Шаг 5: поворот изображения

Вы можете повернуть изображение с помощью метода setRotationAngle () . Для этого метода вам нужно передать целое число, представляющее угол поворота, на который вы хотите повернуть изображение.

// Rotating the image 
image.setRotationAngle(45); 

Шаг 6: Добавление изображения в документ

Теперь добавьте объект изображения, созданный на предыдущем шаге, используя метод add () класса Document , как показано ниже.

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

Шаг 7: Закрытие документа

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

// Closing the document 
document.close(); 

пример

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

Он создает PDF-документ с именемвращением Image.pdf , добавляет к нему изображение, поворачивает его и сохраняет по пути C: / itextExamples / .

Сохраните этот код в файле с именем RotatingImage.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 RotatingImage {    
   public static void main(String args[]) throws Exception {              
      // Creating a PdfWriter       
      String dest = "C:/itextExamples/rotatingImage.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:/itextExamples/logo.jpg";       
      ImageData data = ImageDataFactory.create(imFile);              
      
      // Creating an Image object        
      Image image = new Image(data);                
      
      // Rotating the image       
      image.setRotationAngle(45);                       
      
      // Adding image to the document       
      document.add(image);              
      
      // Closing the document       
      document.close(); 
      
      System.out.println("Image rotated");    
   } 
}   

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

javac RotatingImage.java 
java RotatingImage 

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

Image Rotated

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

Вращающееся изображение

iText — текстовая аннотация

В этой главе мы увидим, как добавить текстовую аннотацию в документ PDF с помощью библиотеки iText.

Создание текстовой аннотации в PDF

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

Чтобы использовать текстовую аннотацию в вашем PDF-документе, вам нужно создать объект класса PdfTextAnnotation и добавить его в PdfPage .

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

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

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

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

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

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

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

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

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

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

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

Шаг 3: Создание объекта Document

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

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

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

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

Класс PdfAnnotation пакета com.itextpdf.kernel.pdf.annot представляет суперкласс всех аннотаций.

Среди своих производных классов класс PdfTextAnnotation представляет текстовую аннотацию. Создайте объект этого класса, как показано ниже.

// Creating PdfAnnotation 
Rectangle rect = new Rectangle(20, 800, 0, 0); 
PdfAnnotation ann = new PdfTextAnnotation(rect);

Шаг 5: Установка цвета аннотации

Установите цвет для аннотации с помощью метода setColor () класса PdfAnnotation . В этот метод передайте цветовой объект, представляющий цвет аннотации, в качестве параметра.

// Setting color to the annotation 
ann.setColor(Color.GREEN); 

Шаг 6: Установка заголовка и содержания аннотации

Установите заголовок и содержимое аннотации, используя методы setTitle () и setContents () класса PdfAnnotation соответственно, как показано ниже.

// Setting title to the annotation 
ann.setTitle(new PdfString("Hello"));        

// Setting contents of the annotation 
ann.setContents("Hi welcome to Tutorialspoint."); 

Шаг 7: Добавление аннотации на страницу

Создайте новый класс PdfPage с помощью метода addNewPage () класса PdfDocument и добавьте вышеупомянутую аннотацию с помощью метода addAnnotation () класса PdfPage , как показано ниже.

// Creating a new page PdfPage page = 
pdf.addNewPage();        

// Adding annotation to a page in a PDF 
page.addAnnotation(ann); 

Шаг 8: Закрытие документа

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

// Closing the document 
document.close(); 

пример

Следующая программа на Java демонстрирует, как добавить текстовую аннотацию в документ PDF с помощью библиотеки iText. Он создает документ PDF с именем textAnnotation.pdf , добавляет к нему текстовую аннотацию и сохраняет ее по пути C: / itextExamples /

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

import com.itextpdf.kernel.color.Color; 
import com.itextpdf.kernel.geom.Rectangle; 
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfPage; 
import com.itextpdf.kernel.pdf.PdfString; 
import com.itextpdf.kernel.pdf.PdfWriter; 
import com.itextpdf.kernel.pdf.annot.PdfAnnotation; 
import com.itextpdf.kernel.pdf.annot.PdfTextAnnotation; 
import com.itextpdf.layout.Document;  

public class TextAnnotation {    
   public static void main(String args[]) throws Exception {        
      // Creating a PdfWriter       
      String dest = "C:/itextExamples/textAnnotation.pdf";       
      PdfWriter writer = new PdfWriter(dest);               
      
      // Creating a PdfDocument       
      PdfDocument pdf = new PdfDocument(writer);               
      
      // Creating a Document        
      Document document = new Document(pdf);             
      
      // Creating PdfTextAnnotation object
      Rectangle rect = new Rectangle(20, 800, 0, 0);       
      PdfAnnotation ann = new PdfTextAnnotation(rect);              
      
      // Setting color to the annotation
      ann.setColor(Color.GREEN);              
      
      // Setting title to the annotation 
      ann.setTitle(new PdfString("Hello"));              
      
      // Setting contents of the annotation       
      ann.setContents("Hi welcome to Tutorialspoint.");              
      
      // Creating a new page       
      PdfPage page =  pdf.addNewPage();              
      
      // Adding annotation to a page in a PDF
      page.addAnnotation(ann);

      // Closing the document       
      document.close();       
      
      System.out.println("Annotation added successfully");    
   } 
}

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

javac TextAnnotation.java 
java TextAnnotation 

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

Annotation added successfully 

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

Текстовая аннотация

iText — ссылка аннотации

В этой главе мы увидим, как добавить аннотацию ссылки в документ PDF с помощью библиотеки iText.

Создание аннотации ссылки в PDF

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

Чтобы использовать текстовую аннотацию в вашем PDF-документе, вам нужно создать объект класса PdfTextAnnotation и добавить его в PdfPage.

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

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

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

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

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

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

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

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

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

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

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

Шаг 3: Создание объекта Document

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

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

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

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

Класс PdfAnnotation пакета com.itextpdf.kernel.pdf.annot представляет суперкласс всех аннотаций.

Среди его производных классов класс PdfLinkAnnotation представляет аннотацию ссылки. Создайте объект этого класса, как показано ниже.

// Creating a PdfLinkAnnotation object 
Rectangle rect = new Rectangle(0, 0); 
PdfLinkAnnotation annotation = new PdfLinkAnnotation(rect); 

Шаг 5: Настройка действия аннотации

Установите действие для аннотации, используя метод setAction () класса PdfLinkAnnotation , как показано ниже.

// Setting action of the annotation 
PdfAction action = PdfAction.createURI("http: // www.tutorialspoint.com/"); 
annotation.setAction(action); 

Шаг 6: Создание ссылки

Создайте ссылку, создав экземпляр класса Link пакета com.itextpdf.layout.element , как показано ниже.

// Creating a link 
Link link = new Link("Click here", annotation); 

Шаг 7: Добавление аннотации ссылки к абзацу

Создайте новый абзац, создав экземпляр класса Paragraph и добавьте ссылку, созданную на предыдущем шаге, с помощью метода add () этого класса, как показано ниже.

// Creating a paragraph 
Paragraph paragraph = new Paragraph("Hi welcome to Tutorialspoint ");        

// Adding link to paragraph 
paragraph.add(link.setUnderline());

Шаг 8: Добавление абзаца в документ

Добавьте абзац в документ, используя метод add () класса Document , как показано ниже.

// Adding paragraph to document 
document.add(paragraph); 

Шаг 9: Закрытие документа

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

// Closing the document 
document.close(); 

пример

Следующая программа на Java демонстрирует, как добавить аннотацию ссылки в документ PDF с помощью библиотеки iText.

Он создает документ PDF с именем linkAnnotation.pdf , добавляет к нему аннотацию ссылки и сохраняет ее по пути C: / itextExamples /

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

import com.itextpdf.kernel.geom.Rectangle; 
import com.itextpdf.kernel.pdf.PdfDocument; 
import com.itextpdf.kernel.pdf.PdfWriter; 
import com.itextpdf.kernel.pdf.action.PdfAction; 
import com.itextpdf.kernel.pdf.annot.PdfLinkAnnotation; 

import com.itextpdf.layout.Document; 
import com.itextpdf.layout.element.Link; 
import com.itextpdf.layout.element.Paragraph;  

public class LinkAnnotation {      
   public static void main(String args[]) throws Exception {             
      // Creating a PdfWriter       
      String dest = "C:/itextExamples/linkAnnotation.pdf";       
      
      PdfWriter writer = new 
      PdfWriter(dest);               
      
      // Creating a PdfDocument       
      PdfDocument pdf = new PdfDocument(writer);               
      
      // Creating a Document
      Document document = new Document(pdf);              
      
      // Creating a PdfLinkAnnotation object       
      Rectangle rect = new Rectangle(0, 0);       
      PdfLinkAnnotation annotation = new PdfLinkAnnotation(rect);              
      
      // Setting action of the annotation       
      PdfAction action = PdfAction.createURI("http:// www.tutorialspoint.com/");       
      annotation.setAction(action);             
      
      // Creating a link       
      Link link = new Link("Click here", annotation);              
      
      // Creating a paragraph       
      Paragraph paragraph = new Paragraph("Hi welcome to Tutorialspoint ");              
      
      // Adding link to paragraph       
      paragraph.add(link.setUnderline());              
      
      // Adding paragraph to document       
      document.add(paragraph);             

      // Closing the document       
      document.close();              
      
      System.out.println("Annotation added successfully");    
   } 
}  

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

javac LinkAnnotation.java 
java LinkAnnotation 

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

Annotation added successfully

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

Ссылка Аннотация

iText — Линия аннотации

В этой главе мы увидим, как добавить аннотацию строки в документ PDF с помощью библиотеки iText.

Создание строки аннотации в формате PDF

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

Чтобы использовать текстовую аннотацию в вашем PDF-документе, вам нужно создать объект класса PdfTextAnnotation и добавить его в PdfPage .

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

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

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

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

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

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

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

Класс PdfDocument — это класс, который представляет PDFDocument в iText. Этот класс принадлежит пакету com.itextpdf.kernel.pdf . Чтобы создать экземпляр этого класса (в режиме записи), вам нужно передать объект класса PdfWriter его конструктору.

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

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

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

Шаг 3: Создание объекта Document

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

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

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

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

Класс PdfAnnotation пакета, который представляет com.itextpdf.kernel.pdf.annot, является суперклассом всех аннотаций.

Среди своих производных классов класс PdfLineAnnotation представляет строку аннотации. Создайте объект этого класса, как показано ниже.

// Creating PdfAnnotation 
Rectangle rect = new Rectangle(20, 800, 0, 0); 
PdfAnnotation annotation = new PdfLineAnnotation(rect); 

Шаг 5: Установка цвета аннотации

Установите цвет для аннотации с помощью метода setColor () класса PdfAnnotation . В этот метод передайте цветовой объект, представляющий цвет аннотации, в качестве параметра.

// Setting color to the annotation 
annotation.setColor(Color.BLUE); 

Шаг 6: Установка заголовка и содержания аннотации

Установите заголовок и содержимое аннотации, используя методы setTitle () и setContents () класса PdfAnnotation соответственно, как показано ниже.

// Setting title to the PdfLineAnnotation 
annotation.setTitle(new PdfString("iText"));        

// Setting contents of the PdfLineAnnotation 
annotation.setContents("Hi welcome to Tutorialspoint"); 

Шаг 7: Добавление аннотации на страницу

Создайте новый класс PdfPage, используя метод addNewPage () класса PdfDocument, и добавьте созданную выше аннотацию, используя метод addAnnotation () класса PdfPage, как показано ниже.

// Creating a new page 
PdfPage page = pdf.addNewPage();

// Adding annotation to a page in a PDF 
page.addAnnotation(annotation); 

Шаг 8: Закрытие документа

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

// Closing the document 
document.close(); 

пример

Следующая программа на Java демонстрирует, как добавить аннотацию строки в документ PDF с помощью библиотеки iText. Он создает документ PDF с именем lineAnnotation.pdf , добавляет к нему аннотацию строки и сохраняет ее по пути C: / itextExamples / .

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

import com.itextpdf.kernel.color.Color; 
import com.itextpdf.kernel.geom.Rectangle; 
import com.itextpdf.kernel.pdf.PdfDocument; 
import com.itextpdf.kernel.pdf.PdfPage; 
import com.itextpdf.kernel.pdf.PdfString; 
import com.itextpdf.kernel.pdf.PdfWriter; 
import com.itextpdf.kernel.pdf.annot.PdfAnnotation; 
import com.itextpdf.kernel.pdf.annot.PdfLineAnnotation; 
import com.itextpdf.layout.Document;  

public class LineAnnotation {
   public static void main(String args[]) throws Exception {             
      // Creating a PdfWriter       
      String dest = "C:/itextExamples/lineAnnotations.pdf";       
      PdfWriter writer = new PdfWriter(dest);               

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

      // Creating a Document        
      Document document = new Document(pdf);              
      
      // Creating a PdfPage       
      PdfPage page = pdf.addNewPage();              

      // creating PdfLineAnnotation object       
      Rectangle rect = new Rectangle(0, 0);
      float[] floatArray  = new float[]{
         20, 790, page.getPageSize().getWidth() - 20, 790
      };
      PdfAnnotation annotation = new PdfLineAnnotation(rect, floatArray);              
      
      // Setting color of the PdfLineAnnotation       
      annotation.setColor(Color.BLUE);              
      
      // Setting title to the PdfLineAnnotation       
      annotation.setTitle(new PdfString("iText"));              
      
      // Setting contents of the PdfLineAnnotation       
      annotation.setContents("Hi welcome to Tutorialspoint");              
      
      // Adding annotation to the page       
      page.addAnnotation(annotation);               
      
      // Closing the document       
      document.close();              
      
      System.out.println("Annotation added successfully");   
   } 
} 

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

javac LineAnnotation.java 
java LineAnnotation 

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

Annotation added successfully

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

Линия аннотации

iText — аннотация разметки

В этой главе мы увидим, как добавить аннотацию текстовой разметки в документ PDF с помощью библиотеки iText.

Создание аннотации разметки в PDF

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

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

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

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

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

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

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

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

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

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

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

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

Шаг 3: Создание объекта Document

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

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

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

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

Класс PdfAnnotation пакета com.itextpdf.kernel.pdf.annot представляет суперкласс всех аннотаций.

Среди его производных классов класс PdfTextMarkupAnnotation представляет текстовую аннотацию разметки. Создайте объект этого класса, как показано ниже.

// Creating a PdfTextMarkupAnnotation object 
Rectangle rect = new Rectangle(105, 790, 64, 10); 
float[] floatArray = new float[]{169, 790, 105, 790, 169, 800, 105, 800};
PdfAnnotation annotation = PdfTextMarkupAnnotation.createHighLight(rect,floatArray);

Шаг 5: Установка цвета аннотации

Установите цвет для аннотации с помощью метода setColor () класса PdfAnnotation . В этот метод передайте цветовой объект, представляющий цвет аннотации, в качестве параметра.

// Setting color to the annotation 
annotation.setColor(Color.YELLOW);

Шаг 6: Установка заголовка и содержания аннотации

Установите заголовок и содержание аннотации, используя методы setTitle () и setContents () класса PdfAnnotation соответственно.

// Setting title to the annotation 
annotation.setTitle(new PdfString("Hello!"));        

// Setting contents to the annotation 
annotation.setContents(new PdfString("Hi welcome to Tutorialspoint")); 

Шаг 7: Добавление аннотации на страницу

Создайте новый класс PdfPage, используя метод addNewPage () класса PdfDocument, и добавьте созданную выше аннотацию, используя метод addAnnotation () класса PdfPage, как показано ниже.

// Creating a new Pdfpage 
PdfPage pdfPage = pdfDoc.addNewPage();        

// Adding annotation to a page in a PDF 
pdfPage.addAnnotation(annotation); 

Шаг 8: Закрытие документа

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

// Closing the document 
document.close(); 

пример

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

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

import com.itextpdf.kernel.color.Color; 
import com.itextpdf.kernel.geom.Rectangle; 
import com.itextpdf.kernel.pdf.PdfDocument; 
import com.itextpdf.kernel.pdf.PdfPage; 
import com.itextpdf.kernel.pdf.PdfString; 
import com.itextpdf.kernel.pdf.PdfWriter; 
import com.itextpdf.kernel.pdf.annot.PdfAnnotation; 
import com.itextpdf.kernel.pdf.annot.PdfTextMarkupAnnotation;
import com.itextpdf.layout.Document;  

public class MarkupAnnotation {    
   public static void main(String args[]) throws Exception {   
      // Creating a PdfDocument object       
      String file = "C:/itextExamples/markupAnnotation.pdf";        
      PdfDocument pdfDoc = new PdfDocument(new PdfWriter(file));                   
   
      // Creating a Document object       
      Document doc = new Document(pdfDoc);                      
      
      // Creating a PdfTextMarkupAnnotation object       
      Rectangle rect = new Rectangle(105, 790, 64, 10);       
      float[] floatArray = new float[]{169, 790, 105, 790, 169, 800, 105, 800};
      PdfAnnotation annotation = 
         PdfTextMarkupAnnotation.createHighLight(rect,floatArray);
      
      // Setting color to the annotation       
      annotation.setColor(Color.YELLOW);              
      
      // Setting title to the annotation       
      annotation.setTitle(new PdfString("Hello!"));
      
      // Setting contents to the annotation       
      annotation.setContents(new PdfString("Hi welcome to Tutorialspoint"));
      
      // Creating a new Pdfpage
      PdfPage pdfPage = pdfDoc.addNewPage();
      
      // Adding annotation to a page in a PDF       
      pdfPage.addAnnotation(annotation);
      
      // Closing the document
      doc.close();  
      
      System.out.println("Annotation added successfully");       
   }     
}      

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

javac MarkupAnnotation.java 
java MarkupAnnotation 

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

Annotation added successfully

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

Разметка Аннотация

iText — Круговая аннотация

В этой главе мы увидим, как добавить круговую аннотацию в документ PDF с помощью библиотеки iText.

Создание круговой аннотации в PDF

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

Чтобы использовать текстовую аннотацию в вашем PDF-документе, вам нужно создать объект класса PdfTextAnnotation и добавить его на Pdf-страницу .

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

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

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

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

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

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

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

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

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

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

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

Шаг 3: Создание объекта Document

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

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

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

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

Класс PdfAnnotation пакета com.itextpdf.kernel.pdf.annot представляет суперкласс всех аннотаций.

Среди его производных классов класс PdfCircleAnnotation представляет аннотацию круга. Создайте объект этого класса, как показано ниже.

// Creating a PdfCircleAnnotation object Rectangle 
rect = new Rectangle(150, 770, 50, 50); 
PdfAnnotation annotation = new PdfCircleAnnotation(rect); 

Шаг 5: Установка цвета аннотации

Установите цвет для аннотации с помощью метода setColor () класса PdfAnnotation . В этот метод передайте цветовой объект, представляющий цвет аннотации, в качестве параметра.

// Setting color to the annotation 
annotation.setColor(Color.YELLOW); 

Шаг 6: Установка заголовка и содержания аннотации

Установите заголовок и содержание аннотации, используя методы setTitle () и setContents () класса PdfAnnotation соответственно.

// Setting title to the annotation 
annotation.setTitle(new PdfString("circle annotation"));        

// Setting contents of the annotation 
annotation.setContents(new PdfString("Hi welcome to Tutorialspoint")); 

Шаг 7: Добавление аннотации на страницу

Создайте новый класс PdfPage, используя метод addNewPage () класса PdfDocument, и добавьте созданную выше аннотацию, используя метод addAnnotation () класса PdfPage, как показано ниже.

// Creating a new page 
PdfPage page = pdf.addNewPage();        

// Adding annotation to a page in a PDF 
page.addAnnotation(ann); 

Шаг 8: Закрытие документа

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

// Closing the document 
document.close(); 

пример

Следующая программа на Java демонстрирует, как добавить круговую аннотацию в документ PDF с помощью библиотеки iText. Он создает документ PDF с именем circleAnnotation.pdf , добавляет к нему аннотацию круга и сохраняет его по пути C: / itextExamples /

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

import com.itextpdf.kernel.color.Color; 
import com.itextpdf.kernel.geom.Rectangle; 
import com.itextpdf.kernel.pdf.PdfDocument; 
import com.itextpdf.kernel.pdf.PdfPage;
import com.itextpdf.kernel.pdf.PdfString; 
import com.itextpdf.kernel.pdf.PdfWriter; 
import com.itextpdf.kernel.pdf.annot.PdfAnnotation; 
import com.itextpdf.kernel.pdf.annot.PdfCircleAnnotation; 
import com.itextpdf.layout.Document;  

public class CircleAnnotation {    
   public static void main(String args[]) throws Exception {   
      // Creating a PdfDocument object       
      String file = "C:/itextExamples// circleAnnotation.pdf";             
      PdfDocument pdf = new PdfDocument(new PdfWriter(file));                   
   
      // Creating a Document object       
      Document doc = new Document(pdf);                      
   
      // Creating a PdfCircleAnnotation object       
      Rectangle rect = new Rectangle(150, 770, 50, 50);       
      PdfAnnotation annotation = new PdfCircleAnnotation(rect);              
   
      // Setting color to the annotation       
      annotation.setColor(Color.YELLOW);              
   
      // Setting title to the annotation       
      annotation.setTitle(new PdfString("circle annotation"));              
   
      // Setting contents of the annotation 
      annotation.setContents(new PdfString("Hi welcome to Tutorialspoint"));             
      
      // Creating a new page        
      PdfPage page = pdf.addNewPage();              
      
      // Adding annotation to a page in a PDF       
      page.addAnnotation(annotation);                       
      
      // Closing the document       
      doc.close();  
      
      System.out.println("Annotation added successfully");       
   }   
}

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

javac PdfCircleAnnotation.java 
java PdfCircleAnnotation 

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

Annotation added successfully

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

Круг Аннотация

iText — Рисование дуги

В этой главе мы увидим, как нарисовать дугу в документе PDF с помощью библиотеки iText.

Рисование дуги в PDF

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

Чтобы нарисовать дугу в PdfDocument, создайте экземпляр класса PdfCanvas пакета com.itextpdf.kernel.pdf .canvas и создайте дугу, используя метод arc () этого класса.

Ниже приведены шаги, чтобы нарисовать дугу в документе PDF.

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

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

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

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

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

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

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

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

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

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

Шаг 3: Создание объекта Document

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

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

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

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

Создайте новый класс PdfPage, используя метод addNewPage () класса PdfDocument .

Создайте объект PdfCanvas пакета com.itextpdf.kernel.pdf.canvas , передав созданный выше объект PdfPage конструктору этого класса, как показано ниже.

// Creating a new page 
PdfPage pdfPage = pdfDoc.addNewPage();           

// Creating a PdfCanvas object 
PdfCanvas canvas = new PdfCanvas(pdfPage); 

Шаг 5: Рисуем дугу

Нарисуйте дугу, используя метод arc () класса Canvas, и заполните ее, используя метод fill () , как показано ниже.

// Drawing an arc 
canvas.arc(50, 50, 300, 545, 0, 360);   

// Filling the arc 
canvas.fill(); 

Шаг 6: Закрытие документа

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

// Closing the document 
document.close();

пример

Следующая программа на Java демонстрирует, как нарисовать дугу в документе PDF с помощью библиотеки iText.

Он создает документ PDF с именем drawingArc.pdf , рисует в нем дугу и сохраняет его по пути C: / itextExamples /

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

import com.itextpdf.kernel.color.Color; 
import com.itextpdf.kernel.pdf.PdfDocument; 
import com.itextpdf.kernel.pdf.PdfPage; 
import com.itextpdf.kernel.pdf.PdfWriter; 
import com.itextpdf.kernel.pdf.canvas.PdfCanvas; 
import com.itextpdf.layout.Document;  

public class DrawingArc {
   public static void main(String args[]) throws Exception {
      // Creating a PdfWriter
      String dest = "C:/itextExamples/drawingArc.pdf";
      PdfWriter writer = new PdfWriter(dest);      

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

      // Creating a Document object
      Document doc = new Document(pdfDoc);

      // Creating a new page
      PdfPage pdfPage = pdfDoc.addNewPage();

      // Creating a PdfCanvas object
      PdfCanvas canvas = new PdfCanvas(pdfPage);

      // Drawing an arc
      canvas.arc(50, 50, 300, 545, 0, 360);

      // Filling the arc
      canvas.fill();              

      // Closing the document
      doc.close();
      
      System.out.println("Object drawn on pdf successfully");       
   }     
} 

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

javac DrawingArc.java 
java DrawingArc

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

Object drawn on pdf successfully 

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

Нарисуй дугу

iText — рисование линии

В этой главе мы увидим, как нарисовать линию в документе PDF с помощью библиотеки iText.

Рисование линии в PDF

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

Чтобы нарисовать линию в PdfDocument Создайте экземпляр класса PdfCanvas пакета com.itextpdf.kernel.pdf.canvas и создайте линию, используя методы moveTo () и lineTO () этого класса.

Ниже приведены шаги, чтобы нарисовать линию в документе PDF.

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

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

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

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

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

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

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

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

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

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

Шаг 3: Создание объекта Document

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

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

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

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

Создайте новый класс PdfPage, используя метод addNewPage () класса PdfDocument .

Создайте объект PdfCanvas пакета com.itextpdf.kernel.pdf.canvas , передав созданный выше объект PdfPage конструктору этого класса, как показано ниже.

// Creating a new page 
PdfPage pdfPage = pdfDoc.addNewPage();           

// Creating a PdfCanvas object 
PdfCanvas canvas = new PdfCanvas(pdfPage); 

Шаг 5: Рисуем линию

Установите начальную точку линии, используя метод moveTO () класса Canvas , как показано ниже.

// Initial point of the line 
canvas.moveTo(100, 300); 

Теперь нарисуйте линию из этой точки в другую точку, используя метод lineTo () , как показано ниже.

// Drawing the line 
canvas.lineTo(500, 300); 

Шаг 6: Закрытие документа

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

// Closing the document 
document.close(); 

пример

Следующая программа на Java демонстрирует, как нарисовать линию в документе PDF с помощью библиотеки iText. Он создает документ PDF с именем drawingLine.pdf , рисует в нем дугу и сохраняет его по пути C: / itextExamples /

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

import com.itextpdf.kernel.pdf.PdfDocument; 
import com.itextpdf.kernel.pdf.PdfPage; 
import com.itextpdf.kernel.pdf.PdfWriter; 
import com.itextpdf.kernel.pdf.canvas.PdfCanvas; 
import com.itextpdf.layout.Document;  

public class DrawingLine {     
   public static void main(String args[]) throws Exception {            
      // Creating a PdfWriter       
      String dest = "C:/itextExamples/drawingLine.pdf";             
      PdfWriter writer = new PdfWriter(dest);           
      
      // Creating a PdfDocument object       
      PdfDocument pdfDoc = new PdfDocument(writer);                   
      
      // Creating a Document object       
      Document doc = new Document(pdfDoc);                
      
      // Creating a new page       
      PdfPage pdfPage = pdfDoc.addNewPage();               
      
      // Creating a PdfCanvas object       
      PdfCanvas canvas = new PdfCanvas(pdfPage);              
      
      // Initial point of the line       
      canvas.moveTo(100, 300);              
      
      // Drawing the line       
      canvas.lineTo(500, 300);           
      
      // Closing the path stroke       
      canvas.closePathStroke();              
      
      // Closing the document       
      doc.close();  
      
      System.out.println("Object drawn on pdf successfully");             
   }     
}

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

javac DrawingLine.java 
java DrawingLine

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

Object drawn on pdf successfully 

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

Рисование линии

iText — Рисование круга

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

Рисование круга на PDF

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

Чтобы нарисовать круг в PdfDocument, создайте экземпляр класса PdfCanvas пакета com.itextpdf.kernel.pdf .canvas и вызовите метод circle () этого класса.

Ниже приведены шаги, чтобы нарисовать круг в документе PDF.

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

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

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

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

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

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

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

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

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

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

Шаг 3: Создание объекта Document

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

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

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

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

Создайте новый класс PdfPage, используя метод addNewPage () класса PdfDocument . Создайте экземпляр объекта PdfCanvas пакета com.itextpdf.kernel.pdf.canvas , передав объект PdfPage конструктору этого класса, как показано ниже.

// Creating a new page 
PdfPage pdfPage = pdfDoc.addNewPage();           

// Creating a PdfCanvas object 
PdfCanvas canvas = new PdfCanvas(pdfPage); 

Шаг 5 Установка цвета

Установите цвет круга с помощью метода setColor () класса Canvas , как показано ниже.

// Setting color to the circle 
Color color = Color.GREEN; 
canvas.setColor(color, true); 

Шаг 6: Рисуем круг

Нарисуйте круг, вызвав метод circle () в Canvas , как показано ниже.

// creating a circle 
canvas.circle(300, 400, 200); 

Шаг 7: Закрытие документа

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

// Closing the document 
document.close(); 

пример

Следующая Java-программа демонстрирует, как нарисовать круг в PDF-документе с помощью библиотеки iText. Он создает документ PDF с именем drawingCircle.pdf , рисует в нем круг и сохраняет его по пути C: / itextExamples /

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

import com.itextpdf.kernel.color.Color; 
import com.itextpdf.kernel.pdf.PdfDocument; 
import com.itextpdf.kernel.pdf.PdfPage; 
import com.itextpdf.kernel.pdf.PdfWriter; 
import com.itextpdf.kernel.pdf.canvas.PdfCanvas; 
import com.itextpdf.layout.Document;  

public class DrawingCircle {      
   public static void main(String args[]) throws Exception {           
      // Creating a PdfWriter       
      String dest = "C:/itextExamples/drawingCircle.pdf";           
      PdfWriter writer = new PdfWriter(dest);            
      
      // Creating a PdfDocument object       
      PdfDocument pdfDoc = new PdfDocument(writer);

      // Creating a Document object
      Document doc = new Document(pdfDoc);
      
      // Creating a new page
      PdfPage pdfPage = pdfDoc.addNewPage();
      
      // Creating a PdfCanvas object
      PdfCanvas canvas = new PdfCanvas(pdfPage);  
      
      // Setting color to the circle
      Color color = Color.GREEN;       
      canvas.setColor(color, true);              
      
      // creating a circle
      canvas.circle(300, 400, 200);
      
      // Filling the circle       
      canvas.fill();             
      
      // Closing the document 
      doc.close();  
      
      System.out.println("Object drawn on pdf successfully");
   }     
} 

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

javac DrawingCircle.java 
java DrawingCircle

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

Object drawn on pdf successfully 

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

Рисование круга

iText — Настройка шрифта

В этой главе мы увидим, как установить цвет и шрифт для текста в документе PDF с помощью библиотеки iText.

Настройка шрифта текста в PDF

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

Чтобы добавить абзац в документ, вам нужно создать экземпляр класса Paragraph и добавить этот объект в документ с помощью метода add () . Вы можете установить цвет и шрифт для текста, используя методы setFontColor () и setFont () соответственно.

Ниже приведены шаги для установки цвета и шрифта для текста в документе PDF.

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

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

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

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

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

Шаг 2. Создание PDF-документа

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

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

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

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

Шаг 3: Создание класса Document

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

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

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

Шаг 4: Создание текста

Создайте текст, создав экземпляр класса Text пакета com.itextpdf.layout.element, как показано ниже.

// Creating text object 
Text text = new Text("Tutorialspoint"); 

Шаг 5: Установка шрифта и цвета для текста

Создайте объект PdfFont, используя метод createFont () класса PdfFontFactory пакета com.itextpdf.kernel.font, как показано ниже

// Setting font of the text PdfFont 
font = PdfFontFactory.createFont(FontConstants.HELVETICA_BOLD); 

Теперь установите шрифт для текста, используя метод setFont () класса Text для этого метода. Передайте объект PdfFont в качестве параметра, как показано ниже.

text1.setFont(font);

Чтобы установить цвет текста, вызовите метод setFontColor () класса Text, как показано ниже.

// Setting font color 
text.setFontColor(Color.GREEN); 

Шаг 6: Добавление текста в абзац

Создайте объект класса Paragraph и добавьте созданный выше текст, используя метод add () , как показано ниже.

// Creating Paragraph 
Paragraph paragraph = new Paragraph();  

// Adding text to the paragraph 
paragraph.add(text); 

Шаг 7: Добавление абзаца в документ

Добавьте абзац в документ, используя метод add () класса Document , как показано ниже.

doc.add(paragraph1)

Шаг 8: Закрытие документа

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

// Closing the document 
document.close(); 

пример

Следующая программа на Java демонстрирует, как установить цвет и шрифт для текста в PDF с помощью библиотеки iText. Он создает документ PDF с именем fonts.pdf , форматирует текст и сохраняет его по пути C: / itextExamples /

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

import com.itextpdf.io.font.FontConstants; 
import com.itextpdf.kernel.color.Color; 
import com.itextpdf.kernel.font.PdfFontFactory; 
import com.itextpdf.kernel.font.PdfFont; 
import com.itextpdf.kernel.pdf.PdfDocument; 
import com.itextpdf.kernel.pdf.PdfWriter; 

import com.itextpdf.layout.Document; 
import com.itextpdf.layout.element.Paragraph; 
import com.itextpdf.layout.element.Text;  

public class FormatingTheText {     
   public static void main(String args[]) throws Exception {        
      // Creating a PdfWriter object   
      String dest = "C:/itextExamples/fonts.pdf";   
      PdfWriter writer = new PdfWriter(dest);             
   
      // Creating a PdfDocument object      
      PdfDocument pdf = new PdfDocument(writer);                   
   
      // Creating a Document object       
      Document doc = new Document(pdf);
   
      // Creating text object       
      Text text1 = new Text("Tutorialspoint");              
   
      // Setting font of the text       
      PdfFont font = PdfFontFactory.createFont(FontConstants.HELVETICA_BOLD);       
      text1.setFont(font);                 
   
      // Setting font color
      text1.setFontColor(Color.GREEN);
   
      // Creating text object
      Text text2 = new Text("Simply Easy Learning");
      text2.setFont(PdfFontFactory.createFont(FontConstants.HELVETICA));         
      
      // Setting font color
      text2.setFontColor(Color.BLUE);
      
      // Creating Paragraph
      Paragraph paragraph1 = new Paragraph();
      
      // Adding text1 to the paragraph
      paragraph1.add(text1);
      paragraph1.add(text2);
      
      // Adding paragraphs to the document
      doc.add(paragraph1);
      doc.close();       
      
      System.out.println("Text added to pdf ..");   
   }     
}   

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

javac FormatingTheText.java 
java FormatingTheText 

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

Text added to pdf ..

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

шрифты

iText — сокращение контента

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

Сокращение содержимого в PDF

Ниже приведены шаги по сжатию содержимого страницы PDF с помощью библиотеки iText.

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

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

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

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

Чтобы прочитать данные из существующего файла PDF, создайте объект PdfReader, как показано ниже.

// Creating a PdfReader 
String src = "C:/itextExamples/pdfWithImage.pdf"; 
PdfReader reader = new PdfReader(src); 

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

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

Создайте исходные и целевые документы PDF, передав объекты PdfWriter и PdfReader конструкторам, как показано ниже.

// Creating a PdfDocument objects 
PdfDocument destpdf = new PdfDocument(writer);         
PdfDocument srcPdf = new PdfDocument(reader); 

Шаг 3: Открытие страницы из существующего PDF

Получить страницу из исходного PDF-файла с помощью метода getPage () класса PdfPage . Используя этот объект, получите размер страницы исходного документа, как показано ниже.

// Opening a page from the existing PDF 
PdfPage origPage = srcPdf.getPage(1);       

// Getting the page size 
Rectangle orig = origPage.getPageSizeWithRotation(); 

Шаг 4: Сжатие содержимого исходного PDF

Используя метод getScaleInstance () класса AffineTransform , уменьшите содержимое страницы исходного документа, как показано ниже.

// Shrink original page content using transformation matrix 
AffineTransform transformationMatrix = AffineTransform.getScaleInstance(    
   page.getPageSize().getWidth()/ orig.getWidth()/2,    
   page.getPageSize().getHeight()/ orig.getHeight()/2); 

Шаг 5: Копирование страницы

Объедините матрицу аффинного преобразования , созданную на предыдущем шаге, с матрицей объекта canvas конечного PDF-документа, как показано ниже.

// Concatenating the affine transform matrix to the current matrix 
PdfCanvas canvas = new PdfCanvas(page);       
canvas.concatMatrix(transformationMatrix); 

Теперь добавьте копию страницы к объекту canvas целевого PDF в исходный документ, как показано ниже.

// Add the object to the canvas 
PdfFormXObject pageCopy = origPage.copyAsFormXObject(destpdf); 
canvas.addXObject(pageCopy, 0, 0); 

Шаг 6: Создание объекта Document

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

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

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

Шаг 7: Закрытие документа

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

// Closing the document 
document.close();

пример

Следующая программа на Java демонстрирует, как уменьшить содержимое страницы PDF с помощью библиотеки iText. Он создает документ PDF с именем shrinkingPDF.pdf , сжимает изображение в формате PDF и сохраняет его по пути C: / itextExamples /

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

import com.itextpdf.kernel.geom.AffineTransform; 
import com.itextpdf.kernel.geom.Rectangle; 

import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfPage; 
import com.itextpdf.kernel.pdf.PdfReader; 
import com.itextpdf.kernel.pdf.PdfWriter; 
import com.itextpdf.kernel.pdf.canvas.PdfCanvas; 

import com.itextpdf.kernel.pdf.xobject.PdfFormXObject; 
import com.itextpdf.layout.Document;  

public class ShrinkPDF {    
   public static void main(String args[]) throws Exception {
      // Creating a PdfWriter object
      String dest = "C:/itextExamples/shrinking.pdf";
      PdfWriter writer = new PdfWriter(dest);
      
      // Creating a PdfReader
      String src = "C:/itextExamples/pdfWithImage.pdf";
      PdfReader reader = new PdfReader(src);
      
      // Creating a PdfDocument objects
      PdfDocument destpdf = new PdfDocument(writer);
      PdfDocument srcPdf = new PdfDocument(reader);
         
      // Opening a page from the existing PDF 
      PdfPage origPage = srcPdf.getPage(1);
         
      // Getting the page size
      Rectangle orig = origPage.getPageSizeWithRotation();
         
      // Adding a page to destination Pdf
      PdfPage page = destpdf.addNewPage();
         
      // Scaling the image in a Pdf page     
      AffineTransform transformationMatrix = AffineTransform.getScaleInstance(
         page.getPageSize().getWidth()/orig.getWidth()/2,
         page.getPageSize().getHeight()/ orig.getHeight()/2);
      
      // Shrink original page content using transformation matrix
      PdfCanvas canvas = new PdfCanvas(page);
      canvas.concatMatrix(transformationMatrix);
      
      // Add the object to the canvas
      PdfFormXObject pageCopy = origPage.copyAsFormXObject(destpdf);
      canvas.addXObject(pageCopy, 0, 0);
      
      // Creating a Document object
      Document doc = new Document(destpdf);
      
      // Closing the document
      doc.close();
      
      System.out.println("Table created successfully..");
   }
}      

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

javac ShrinkingPDF.java 
java ShrinkingPDF

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

Table created successfully..

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

усадка

iText — Черепичные PDF страницы

Следующая программа Java демонстрирует, как разбить содержимое страницы PDF на разные страницы с помощью библиотеки iText. Он создает документ PDF с именем tilingPdfPages.pdf и сохраняет его по пути C: / itextExamples / .

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

import com.itextpdf.kernel.geom.AffineTransform; 
import com.itextpdf.kernel.geom.PageSize; 
import com.itextpdf.kernel.geom.Rectangle; 

import com.itextpdf.kernel.pdf.PdfDocument; 
import com.itextpdf.kernel.pdf.PdfPage; 
import com.itextpdf.kernel.pdf.PdfReader; 
import com.itextpdf.kernel.pdf.PdfWriter; 
import com.itextpdf.kernel.pdf.canvas.PdfCanvas; 
import com.itextpdf.kernel.pdf.xobject.PdfFormXObject;  

public class TilingPDFPages {      
   public static void main(String args[]) throws Exception {             
      // Creating a PdfWriter object       
      String dest = "C:/itextExamples/tilingPdfPages.pdf";       
      PdfWriter writer = new PdfWriter(dest);               
      
      // Creating a PdfReader       
      String src = "C:/itextExamples/pdfWithImage.pdf";       
      PdfReader reader = new PdfReader(src);        
      
      // Creating a PdfDocument objects       
      PdfDocument destpdf = new PdfDocument(writer);               
      PdfDocument srcPdf = new PdfDocument(reader);               
      
      // Opening a page from the existing PDF       
      PdfPage origPage = srcPdf.getPage(1);               
      
      // Getting the page size       
      Rectangle orig = origPage.getPageSizeWithRotation();    
      
      // Getting the size of the page       
      PdfFormXObject pageCopy = origPage.copyAsFormXObject(destpdf);  
      
      // Tile size 
      Rectangle tileSize = PageSize.A4.rotate();       
      AffineTransform transformationMatrix = 
         AffineTransform.getScaleInstance(tileSize.getWidth() / orig.getWidth() * 
         2f, tileSize.getHeight() / orig.getHeight() * 2f);              
      
      // The first tile       
      PdfPage page = 
      destpdf.addNewPage(PageSize.A4.rotate());       
      
      PdfCanvas canvas = new PdfCanvas(page);       
      canvas.concatMatrix(transformationMatrix);      
      canvas.addXObject(pageCopy, 0, -orig.getHeight() / 2f);              
      
      // The second tile       
      page = destpdf.addNewPage(PageSize.A4.rotate());       
      canvas = new PdfCanvas(page);       
      canvas.concatMatrix(transformationMatrix);        
      canvas.addXObject(pageCopy, -orig.getWidth() / 2f, -orig.getHeight() / 2f);
      
      // The third tile
      page = destpdf.addNewPage(PageSize.A4.rotate());
      canvas = new PdfCanvas(page);
      canvas.concatMatrix(transformationMatrix);
      canvas.addXObject(pageCopy, 0, 0);    
      
      // The fourth tile
      page = destpdf.addNewPage(PageSize.A4.rotate());
      canvas = new PdfCanvas(page);
      canvas.concatMatrix(transformationMatrix);
      canvas.addXObject(pageCopy, -orig.getWidth() / 2f, 0);
      
      // closing the documents
      destpdf.close();
      srcPdf.close();
      
      System.out.println("PDF created successfully..");
   }
}

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

javac TilingPDFPages.java 
java TilingPDFPages

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

PDF created successfully..

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

Черепица PDF Страницы

iText — N-up

Следующая программа на Java демонстрирует, как выполнить N-up на странице PDF с помощью библиотеки iText. Он создает документ PDF с именем nUppingPDF.pdf и сохраняет его по пути C: / itextExamples /

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

import com.itextpdf.kernel.geom.AffineTransform; 
import com.itextpdf.kernel.geom.PageSize; 
import com.itextpdf.kernel.geom.Rectangle; 

import com.itextpdf.kernel.pdf.PdfDocument; 
import com.itextpdf.kernel.pdf.PdfPage; 
import com.itextpdf.kernel.pdf.PdfReader; 
import com.itextpdf.kernel.pdf.PdfWriter; 
import com.itextpdf.kernel.pdf.canvas.PdfCanvas; 
import com.itextpdf.kernel.pdf.xobject.PdfFormXObject;  
   
public class NUppingPDF {    
   public static void main(String args[]) throws Exception {       
      // Creating a PdfWriter object       
      String dest = "C:/itextExamples/nUppingPDF.pdf";       
      PdfWriter writer = new PdfWriter(dest);                
      
      // Creating a PdfReader       
      String src = "C:/itextExamples/pdfWithImage.pdf";       
      PdfReader reader = new PdfReader(src);        
         
      // Creating a PdfDocument objects       
      PdfDocument destpdf = new PdfDocument(writer);               
      PdfDocument srcPdf = new PdfDocument(reader);                
      
      // Opening a page from the existing PDF       
      PdfPage origPage = srcPdf.getPage(1);       
      Rectangle orig = origPage.getPageSize();       
      PdfFormXObject pageCopy = origPage.copyAsFormXObject(destpdf);              
      
      // N-up page       
      PageSize nUpPageSize = PageSize.A4.rotate();       
      PdfPage page = destpdf.addNewPage(nUpPageSize);       
      PdfCanvas canvas = new PdfCanvas(page);              
      
      // Scale page       
      AffineTransform transformationMatrix = AffineTransform.getScaleInstance( 
         nUpPageSize.getWidth() / orig.getWidth() / 
         2f, nUpPageSize.getHeight() / orig.getHeight() / 2f);       
      canvas.concatMatrix(transformationMatrix);              
      
      // Add pages to N-up page       
      canvas.addXObject(pageCopy, 0, orig.getHeight());       
      canvas.addXObject(pageCopy, orig.getWidth(), orig.getHeight());       
      canvas.addXObject(pageCopy, 0, 0);       
      canvas.addXObject(pageCopy, orig.getWidth(), 0);              
      
      // closing the documents       
      destpdf.close();       
      srcPdf.close();              
      
      System.out.println("PDF created successfully..");   
   } 
} 

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

javac NUppingPDF.java 
java NUppingPDF 

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

PDF created successfully..

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