A powerful and user-friendly desktop application for seamlessly converting between images and PDFs, featuring A4 standardization and advanced image management.
-
Image to PDF Conversion
- Convert multiple JPG images to a single PDF
- Automatic A4 size standardization
- Maintains aspect ratio with white margins
- Professional-grade output quality
-
PDF to Image Conversion
- Extract images from PDF files
- Adjustable quality settings
- Batch processing support
-
Advanced Image Management
- Drag-and-drop file reordering
- Real-time image preview
- Image rotation (90° clockwise/counter-clockwise)
- Natural file sorting (1, 2, 10 instead of 1, 10, 2)
- Bulk file operations
-
Professional UI
- Modern themed interface
- Intuitive controls
- Progress indicators
- Status updates
- Python 3.7 or higher
- Poppler (for PDF to Image conversion)
-
Windows:
- Download from poppler releases
- Add to system PATH
-
Linux:
bash sudo apt-get install poppler-utils -
macOS:
bash brew install poppler
-
Clone the repository:
bash git clone https://github.com/CreatorSpark/image-pdf-converter.git cd image-pdf-converter -
Create and activate virtual environment: ```bash
python -m venv venv venv\Scripts\activate
python -m venv venv source venv/bin/activate ```
-
Install dependencies:
bash pip install -r requirements.txt
Run the application: python src/image_pdf_converter.py
- Select "JPG to PDF" mode
- Click "Add Files" or drag and drop JPG images
- Arrange images in desired order
- Click "Convert Files" and choose output location
- Select "PDF to JPG" mode
- Add PDF file(s)
- Adjust quality slider if needed
- Click "Convert Files" and select output folder
- Built with Python and Tkinter
- Uses PIL for image processing
- Implements pdf2image for PDF conversion
- A4 size standardization (8.27" × 11.69" at 300 DPI)
- Optimized image compression
This project is licensed under the MIT License - see the LICENSE file for details.
Created by CreatorSpark
- GitHub: @CreatorSpark
Contributions, issues, and feature requests are welcome! Feel free to check the issues page.
Give a ⭐️ if this project helped you!
For support or queries, please open an issue in the GitHub repository.