Biblioteca de Anotações PDF Python de Código Aberto

Experimente esta biblioteca Python gratuita e de código aberto para adicionar e extrair anotações de documentos PDF.

O que é pypdf?

Pypdf é uma biblioteca python gratuita e de código aberto conhecida por seu conjunto diversificado de recursos para lidar com documentos PDF em ambiente python. Esta ferramenta é útil para várias manipulações de PDF, mas vamos nos concentrar em seus recursos relacionados a anotações nesta análise.

Os recursos notáveis do pypdf relacionados às anotações incluem:

  • Adicionando anotações de formas: podemos desenhar formas como linhas, retângulos, elipses e polígonos etc. em áreas específicas de páginas PDF como anotações.
  • Adicionando anotações de texto: podemos adicionar anotações de texto em posições específicas de páginas PDF.
  • Adicionando anotações de link: também é possível adicionar anotações de link (como um hiperlink) a documentos PDF.
  • Extração de anotações: Podemos iterar e extrair informações sobre todas as anotações em um documento PDF usando a biblioteca pypdf.
GitHub

Estatísticas do GitHub

Nome:
Linguagem:
Estrelas:
Garfos:
Licença:
O repositório foi atualizado pela última vez em

Introdução ao pypdf

Você precisa do Python versão 3.6.0 ou superior para instalar e usar o pypdf. Então, primeiro instale o Python e então use os comandos abaixo para instalar o pypdf na sua máquina usando pip e ambiente virtual.

Linux


python3 -m venv venv
source venv/bin/activate
pip install pypdf

Mac OS


python -m venv venv
source venv/bin/activate
pip install pypdf

Windows


python3 -m venv venv
venv\Scripts\activate.bat
pip install pypdf

Adicionar anotação retangular ao PDF

Podemos adicionar anotações retangulares a documentos PDF usando a biblioteca pypdf. Usaremos a classe Rectangle do módulo pypdf.annotations da biblioteca pypdf para definir o retângulo. Então usaremos o método add_annotations da classe PDFWriter para adicionar anotações retangulares ao PDF.

Confira o trecho de código abaixo para mais detalhes:

Saída

Na captura de tela abaixo, você pode ver que o retângulo foi adicionado para anotar a palavra Open Source:

Adicionar anotação de texto ao PDF

Criamos anotações de texto usando a classe Text do módulo pypdf.annotations da biblioteca pypdf. Depois disso, podemos usar o método add_annotations da classe PDFWriter da biblioteca pypdf para adicionar anotações ao PDF. A anotação de texto é adicionada como um ícone que se expande e mostra o texto quando o ícone é clicado. Verifique o trecho de código abaixo para obter os detalhes:

Saída

Como podemos ver na tela abaixo, o código acima adiciona um ícone ao PDF na posição especificada, que mostra a anotação de texto quando o ícone é clicado:

Adicionar anotação de link ao PDF

Anotações de link são criadas usando a classe Link do módulo pypdf.annotations. No entanto, o problema com a anotação de link é que ela apenas adiciona o link, mas ele não fica visível. Para resolver esse problema, incorporaremos um retângulo usando a classe Rectangle do módulo pypdf.annotations, conforme explicamos anteriormente. Dessa forma, o usuário pode identificar visualmente o local onde a anotação de link é adicionada. Verifique o trecho de código abaixo para melhor compreensão:

Saída

Como podemos ver na saída, o retângulo serve como uma área que, quando clicada, redireciona o usuário para o link especificado.

Extrair Anotações de PDF

Podemos extrair anotações de um PDF usando a biblioteca pypdf. Iteramos por todas as anotações nas páginas do PDF e então usamos o método get_object para obter o objeto de anotação. Então extraímos informações relevantes do objeto. Verifique o snippet de código abaixo para obter os detalhes:

Saída

Como podemos ver na captura de tela abaixo, o programa retornou o tipo de anotação e as coordenadas das anotações no documento PDF:

Conclusão

O Pypdf permite que desenvolvedores Python adicionem diferentes tipos de anotações a PDFs e acessem informações essenciais sobre anotações, como seu tipo e localização, tornando-o uma escolha prática para tarefas que exigem adicionar anotações e extrair dados sobre anotações.

Produtos Similares

 Portugese