Skip to content

A modern, GUI-based PDF and Word utility built with Python and Tkinter. Features include PDF password removal, PDF merging, drag-and-drop support, threaded batch processing, and Word (.docx) to PDF conversion with subfolder preservation.

Notifications You must be signed in to change notification settings

Anuj52/pdf-tools-gui

Repository files navigation

FluxPDF

The All-in-One PDF Utility: Remove Passwords, Merge Files, and Convert Word Documents.

Download Latest Release Total Downloads

Stars Issues Forks Platform Windows License


FluxPDF is a modern, tabbed application designed for productivity. It allows you to manipulate PDF files and convert documents without needing complex command-line tools.

📥 Download & Install

No Python required! Simply download the Windows Installer.

  1. Go to the Latest Release Page.
  2. Download FluxPDF_Setup.exe.
  3. Run the installer.
  4. Launch FluxPDF from your Desktop or Start Menu.

🚀 Features

🔓 PDF Password Tool

  • Bulk Decrypt: Remove passwords from multiple PDFs at once.
  • Smart Handling: Uses a common password or a specific CSV map for different files.
  • Re-Encrypt: Optionally secure output files with a new password.
  • Safe: Automatically backs up original files before overwriting.

📑 PDF Merge Tool

  • Drag & Drop: Easily add files or entire folders.
  • Reorder: Use "Move Up" and "Move Down" buttons to arrange pages.
  • Fast Merge: Combines distinct PDFs into a single document instantly.

📝 Word → PDF Converter

  • Batch Convert: Turn .docx files into .pdf using native Microsoft Word automation.
  • Folder Preservation: Option to keep your subfolder structure in the output directory.
  • Live Tracking: View a detailed results table (Status, Message, Output Path).
  • One-Click Access: Button to immediately open the output folder.

🧪 Word → PDF Behavior

The application includes logic to handle directory structures intelligently.

Preserve Subfolders Option:

Option State Input Path Output Path Result
Enabled C:\Docs\Reports\2024\jan\file1.docx C:\out\Reports\2024\jan\file1.pdf Mirrors structure
Disabled C:\Docs\Reports\2024\jan\file1.docx C:\out\file1.pdf Flattens all files

💻 For Developers: Running from Source

If you prefer to run the Python script directly or contribute to the code, follow these steps.

1. Prerequisites

  • Python 3.10+
  • Microsoft Word (Required for .docx conversion on Windows)

2. Installation

# Clone the repository
git clone [https://github.com/Anuj52/pdf-tools-gui.git](https://github.com/Anuj52/pdf-tools-gui.git)
cd pdf-tools-gui

# Install dependencies
pip install PyPDF2 pandas docx2pdf tkinterdnd2 comtypes

```bash

### 3. Run the App

```bash
python pdf_tools_tabbed_word_improved.py
```bash
## 🛠 Building the Installer (CI/CD)

This project uses GitHub Actions to automatically build and release the Windows installer.

* **Push to Main:** Triggers a build check.
* **Push a Tag (e.g., `v1.0.0`):**
    * Compiles the Python code using `PyInstaller` (OneDir mode).
    * Builds a Setup EXE using `Inno Setup`.
    * Publishes a new GitHub Release with the installer attached.

### Build Locally
Ensure you have **Inno Setup 6** installed.

```bash
pyinstaller FluxPDF.spec --clean --noconfirm
"C:\Program Files (x86)\Inno Setup 6\ISCC.exe" setup.iss

```bash

## ⭐ Credits & License

* **PyPDF2:** PDF manipulation.
* **docx2pdf:** Microsoft Word automation.
* **tkinterdnd2:** Drag-and-drop support for Tkinter.
* **Inno Setup:** Windows installer generation.

Distributed under the **MIT License**.

About

A modern, GUI-based PDF and Word utility built with Python and Tkinter. Features include PDF password removal, PDF merging, drag-and-drop support, threaded batch processing, and Word (.docx) to PDF conversion with subfolder preservation.

Topics

Resources

Stars

Watchers

Forks

Packages