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

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

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

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

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

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

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

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