Учебники

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-документ, как показано ниже.