A powerful and modern desktop application for batch image processing, PDF generation, and icon creation.
Formato is a professional-grade image processing suite built with Python and CustomTkinter.
It combines advanced batch conversion, live preview, watermarking, metadata editing, PDF exporting, and favicon/icon generation in a sleek desktop interface.
Designed and developed by MRThugh, Formato demonstrates modern Python desktop engineering with multithreading, drag-and-drop support, and real-time image rendering.
- Convert images to JPEG, PNG, WEBP, TIFF, and BMP
- Multi-threaded high-speed processing
- Individual progress bars for each file
- Drag & Drop support
- Real-time image preview
- Debounced rendering for smooth performance
- Instant updates while adjusting settings
- Stretch
- Fit while maintaining aspect ratio
- Fill and crop
- Automatic dimension calculation
- Brightness
- Contrast
- Saturation
- Sharpness
- Target file size in KB
- Binary search quality optimization
- Automatic best-quality output
- PNG watermark support with transparency
- Adjustable size and opacity
- Custom margins
- Multiple placement options
- Preserve original EXIF data
- Add custom author/artist metadata
- Combine multiple images into a single PDF
- Generate
.icofiles - Export multiple PNG sizes
- Web and application presets
- Save settings to JSON
- Load saved configurations instantly
| Input | Output |
|---|---|
| JPG / JPEG | JPEG |
| PNG | PNG |
| WEBP | WEBP |
| TIFF | TIFF |
| BMP | BMP |
| GIF | BMP / PNG / JPEG / WEBP |
- :contentReference[oaicite:1]{index=1}
- :contentReference[oaicite:2]{index=2}
- :contentReference[oaicite:3]{index=3}
- :contentReference[oaicite:4]{index=4}
- :contentReference[oaicite:5]{index=5}
git clone https://github.com/MRThugh/Formato.git
cd Formato
pip install -r requirements.txt
python formato.pycustomtkinter
Pillow
tkinterdnd2- Object-Oriented design
- Modular helper functions
- Multi-threaded processing
- Real-time preview engine
- Smart compression algorithm
- JSON-based preset management
Formato automatically finds the highest possible image quality while staying below a user-defined file size limit.
Rendering updates are delayed intelligently to prevent excessive processing during rapid adjustments.
Multiple images are processed simultaneously using Python's ThreadPoolExecutor.
Formato was created to provide:
- Professional image processing tools
- Modern desktop UI/UX
- Efficient multi-threaded performance
- Real-world utility for developers and designers
- A showcase of advanced Python engineering skills
Ali Kamrani GitHub: MRThugh
Formato is more than an image converter. It is a complete desktop application demonstrating:
- Advanced GUI development
- Image processing expertise
- Multithreading
- File handling
- Metadata management
- Software architecture principles
This project reflects the technical growth and engineering mindset of its developer, MRThugh.
MIT License
If you find this project useful, please consider starring the repository on GitHub.
Built with passion by Ali Kamrani (MRThugh)
```