Skip to content

ufrgs/pdf_merge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

46 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Juntador de PDFs

O Juntador de PDFs é uma ferramenta desenvolvida para que seja possível juntar, unir, agrupar Portable Document Format (PDF) em um documento.

Essa solução foi pensada visando a privacidade e praticidade.

Soluções online não são confiáveis porque não há como saber se uma cópia dos documentos será mantida e distribuída online. Soluções através de aplicativos instalados também oferecem risco pois muitos deles podem ser programas maliciosos ou programas espiões.

Então o projeto atual foi criado de forma open-source usando Python e Tkinter.

Capturas de Tela

Selecionando Diversos Arquivos

Aviso de Arquivo(s) Corrompido(s)

Arquivos Reordenados

Janela de Opções (Tema e Idioma)

Janela de Sobre

Janela Aberta ao Salvar

Aviso de Arquivo Salvo com Sucesso

como usar o programa

Acesse a página de Download do Juntador de PDFs e baixe a versão específica de seu sistema operacional.

Use o botão Carregar para abrir a janela e selecionar um ou mais arquivos. Eles irão aparecer em uma lista dentro da janela pricipal. Ao lado de cada PDF carregado haverá 3 botões :

  • X : para remover aquele PDF em específico;
  • : para mover o PDF para cima;
  • : para mover o PDF para baixo;

Quando usar o botão Juntar, um novo PDF será criado seguindo a ordem dos documentos na janela principal.

sobre o projeto

Ele usa o Python e a interface gráfica tkinter para tornar a fusão dos PDFs possível.

Pacotes externos :

Tema :

preparação

Abaixo há a realação de comandos necessários para criar um ambiente virtual, ativá-lo e instalar as dependências.

linux e macos

pdf_merge❯ python -m venv .venv
pdf_merge❯ source .venv/bin/activate
pdf_merge❯ pip install -r requisitos.txt

windows

pdf_merge❯ python -m venv .venv
pdf_merge❯ .venv\Scripts\activate
pdf_merge❯ pip install -r requisitos.txt

Para executar, basta digitar no terminal / prompt de comando :

pdf_merge❯ python -m pdf_merge.main

build

Para criar o executável, é preciso executar o pyinstaller a partir do Terminal/Prompt de Comando. Isso vai criar um executável que pode ser distribuído.

linux

❯ pyinstaller --onefile \
    --add-data "pdf_merge/assets/cpd-logo.jpg:pdf_merge/assets" \
    --add-data ".venv/lib/python3.13/site-packages/sv_ttk:sv_ttk" \
    --hidden-import="PIL._tkinter_finder" \
    --noconsole \
    pdf_merge/main.py

windows

❯ pyinstaller --onefile `
    --icon "pdf_merge/assets/ufrgs.ico" `
    --add-data "pdf_merge/assets/ufrgs.ico;pdf_merge/assets" `
    --add-data "pdf_merge/assets/cpd-logo.jpg;pdf_merge/assets" `
    --add-data ".venv/Lib/site-packages/sv_ttk;sv_ttk" `
    --hidden-import="PIL._tkinter_finder" `
    --noconsole `
     pdf_merge/main.py

todo

  • persistir alterações como tema e idioma;
  • adicionar remoção individual do frame (atualmente funciona com FILO);
  • adicionar idioma espanhol;
  • adicionar mais idiomas (italiano e alemão);
  • arrumar o tema das janelas (está apenas no widgets);

versões

  • v1.3.0 : PDFs podem ser reorganizados;
  • v1.2.6 : verificação de PDFs corrompidos e organização;
  • v1.2.5 : adicionado idioma espanho e removido o __init__.py;
mais antigas
  • v1.2.4 : anotações foram adicionadas;
  • v1.2.3 : melhor comentários e organização do código;
  • v1.2.2 : ajustes para o executável;
  • v1.2.1 : adicionado tema manualmente por conta de alguns ajustes específicos;
  • v1.2.0 : removido o menu da barra de tarefas e movido para os botões, adicionado idiomas alemão e italiano;
  • v1.1.1 : ajuste no import do pywinstyles;
  • v1.1.0 : ajustado para apenas dois temas claro (padrão) e escuro;
  • v1.0.4 : fundo da janela principal agora muda de acordo com o tema;
  • v1.0.3 : ajustes diversos e melhor organização;
  • v1.0.2 : ajustes diversos;
  • v1.0.1 : ajustes diversos;
  • v1.0.0 : lançada a primeira versão para Windows e Linux;

About

Aplicativo para juntar arquivos PDFs

Resources

License

Stars

Watchers

Forks

Languages