A simple and elegant web application that allows users to upload multiple images and instantly convert them into a downloadable PDF. Built with Python, Streamlit, Pillow, and img2pdf, this tool showcases rapid prototyping, file handling, and a sleek interactive UI using modern Python web technologies.
- 📤 Upload multiple
.jpg,.jpeg,.pngimages - 🖼️ Live preview of uploaded images
- 🧠 Automatic conversion to RGB and PDF formatting
- 📄 Download the final PDF in one click
- ⚡ Fast, secure, and lightweight
- Streamlit – UI & Web framework
- img2pdf – Image to PDF conversion
- Pillow – Image processing (RGB, formatting)
- Python 3.8+ – Core language
Make sure Python 3.8+ is installed on your system.
- Clone the repository
git clone https://github.com/HirthikBalaji/Image2PDF.git
cd Image2PDF- Create and activate a virtual environment (optional but recommended)
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate- Install dependencies
pip install streamlit img2pdf pillowStart the Streamlit server with:
streamlit run main.pyThen open the provided localhost URL in your browser (usually http://localhost:8501).
This project demonstrates:
- Building modern UI with minimal code using Streamlit
- Handling multimedia file inputs
- Image-to-PDF logic using
img2pdfwith in-memory I/O - Clean, professional user interface
Ideal for showcasing Python skills, app deployment, and full-stack prototyping in technical interviews or your portfolio.
- Add drag-and-drop upload
- Support more formats (e.g., TIFF, BMP)
- Rearrange image order before PDF generation
- Password-protect PDF files
This project is licensed under the MIT License.
⭐ If you like this project, consider giving it a star!