iText - Visão geral

O Portable Document Format (PDF) é um formato de arquivo que ajuda a apresentar os dados de maneira independente do software, hardware e sistemas operacionais do aplicativo. Cada arquivo PDF contém a descrição de um documento plano de layout fixo, incluindo texto, fontes, gráficos e outras informações necessárias para exibi-lo.

Existem várias bibliotecas disponíveis para criar e manipular documentos PDF por meio de programas, como -

  • Adobe PDF Library- Esta biblioteca fornece API em linguagens como C ++, .NET e Java. Usando isso, podemos editar, visualizar, imprimir e extrair texto de documentos PDF.

  • Formatting Objects Processor- Formatador de impressão de código aberto conduzido por objetos de formatação XSL e um formatador independente de saída. O destino de saída principal é PDF.

  • PDF Box- Apache PDFBox é uma biblioteca Java de código aberto que oferece suporte ao desenvolvimento e conversão de documentos PDF. Usando esta biblioteca, você pode desenvolver programas Java que criam, convertem e manipulam documentos PDF.

  • Jasper Reports - Esta é uma ferramenta de relatório Java que gera relatórios em documentos PDF, incluindo Microsoft Excel, RTF, ODT, valores separados por vírgula e arquivos XML.

O que é o iText?

Semelhante ao software listado acima, o iText é uma biblioteca Java PDF com a qual você pode desenvolver programas Java que criam, convertem e manipulam documentos PDF.

Recursos do iText

A seguir estão os recursos notáveis ​​da biblioteca iText -

  • Interactive- O iText fornece classes (APIs) para gerar documentos PDF interativos. Usando estes, você pode criar mapas e livros.

  • Adding bookmarks, page numbers, etc - Usando o iText, você pode adicionar marcadores, números de página e marcas d'água.

  • Split & Merge - Usando o iText, você pode dividir um PDF existente em vários PDFs e também adicionar / concatenar páginas adicionais a ele.

  • Fill Forms - Usando o iText, você pode preencher formulários interativos em um documento PDF.

  • Save as Image - Usando o iText, você pode salvar PDFs como arquivos de imagem, como PNG ou JPEG.

  • Canvas - A biblioteca iText fornece uma classe Canvas com a qual você pode desenhar várias formas geométricas em um documento PDF, como círculo, linha, etc.

  • Create PDFs- Usando o iText, você pode criar um novo arquivo PDF a partir de seus programas Java. Você pode incluir imagens e fontes também.

Ambiente IText

Siga as etapas fornecidas abaixo para definir o ambiente do iText no Eclipse.

Step 1 - Instale o Eclipse e abra um novo projeto como mostrado abaixo.

Step 2 - Crie um iTextSample projeto conforme mostrado abaixo.

Step 3- Clique com o botão direito no projeto e converta-o em um projeto Maven conforme mostrado abaixo. Depois de convertê-lo em projeto Maven, ele lhe dará umpom.xmlonde você precisa mencionar as dependências necessárias. Depois disso, ojar os arquivos dessas dependências serão baixados automaticamente em seu projeto.

Step 4 - Agora, no pom.xml do projeto, copie e cole o seguinte conteúdo (dependências para o aplicativo iText) e atualize o projeto.

Using pom.xml

Converta o projeto em projeto Maven e adicione o seguinte conteúdo ao seu 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>

Finalmente, se você observar as dependências do Maven, poderá observar que todos os jar arquivos foram baixados.