iText - Panoramica
Il Portable Document Format (PDF) è un formato di file che aiuta a presentare i dati in modo indipendente dal software applicativo, dall'hardware e dai sistemi operativi. Ogni file PDF contiene la descrizione di un documento piatto a layout fisso, inclusi testo, caratteri, grafica e altre informazioni necessarie per visualizzarlo.
Sono disponibili diverse librerie per creare e manipolare documenti PDF tramite programmi, come:
Adobe PDF Library- Questa libreria fornisce API in linguaggi come C ++, .NET e Java. Usando questo, possiamo modificare, visualizzare, stampare ed estrarre testo da documenti PDF.
Formatting Objects Processor- Formattatore di stampa open source guidato da XSL Formatting Objects e un formattatore indipendente dall'output. La destinazione di output principale è PDF.
PDF Box- Apache PDFBox è una libreria Java open source che supporta lo sviluppo e la conversione di documenti PDF. Utilizzando questa libreria, è possibile sviluppare programmi Java che creano, convertono e manipolano documenti PDF.
Jasper Reports - Questo è uno strumento di reporting Java che genera report in documenti PDF inclusi Microsoft Excel, RTF, ODT, valori separati da virgole e file XML.
Cos'è iText?
Simile al software sopra elencato, iText è una libreria PDF Java che consente di sviluppare programmi Java che creano, convertono e manipolano documenti PDF.
Caratteristiche di iText
Di seguito sono riportate le caratteristiche notevoli della libreria iText:
Interactive- iText fornisce classi (API) per generare documenti PDF interattivi. Usandoli, puoi creare mappe e libri.
Adding bookmarks, page numbers, etc - Utilizzando iText, puoi aggiungere segnalibri, numeri di pagina e filigrane.
Split & Merge - Utilizzando iText, puoi dividere un PDF esistente in più PDF e anche aggiungere / concatenare pagine aggiuntive ad esso.
Fill Forms - Utilizzando iText, puoi compilare moduli interattivi in un documento PDF.
Save as Image - Utilizzando iText, puoi salvare i PDF come file immagine, come PNG o JPEG.
Canvas - La libreria iText ti fornisce una classe Canvas con la quale puoi disegnare varie forme geometriche su un documento PDF come cerchio, linea, ecc.
Create PDFs- Usando iText, puoi creare un nuovo file PDF dai tuoi programmi Java. Puoi includere anche immagini e caratteri.
IText Environment
Seguire i passaggi indicati di seguito per impostare l'ambiente iText su Eclipse.
Step 1 - Installa Eclipse e apri un nuovo progetto al suo interno come mostrato di seguito.
Step 2 - Crea un file iTextSample progetto come mostrato di seguito.
Step 3- Fare clic con il pulsante destro del mouse sul progetto e convertirlo in un progetto Maven come mostrato di seguito. Una volta convertito nel progetto Maven, ti darà un filepom.xmldove è necessario menzionare le dipendenze richieste. Successivamente, iljar i file di queste dipendenze verranno automaticamente scaricati nel progetto.
Step 4 - Ora, nel pom.xml del progetto, copia e incolla il seguente contenuto (dipendenze per l'applicazione iText) e aggiorna il progetto.
Using pom.xml
Converti il progetto nel progetto Maven e aggiungi il seguente contenuto al suo file 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>
Infine, se osservi le dipendenze Maven, puoi osservare che tutte le richieste jar i file sono stati scaricati.