JpegtoPDF ("Price List Impaginator") is a local web application designed to automate the conversion of JPEG spreads (double pages) into print-ready PDFs (single A4 pages).
It is particularly suitable for laying out price lists, catalogs, or magazines starting from scans or double-page exports, automatically handling cutting, bleed, and PDF optimization.
- Automatic Spread Splitting: Takes a two-page image (spread) and automatically splits it into two single A4 pages.
- Bleed Management: Option to generate pages with 3mm bleed on all sides.
- Smart Logic: For the binding side (spine), the software "steals" 3mm from the adjacent page of the spread to ensure graphical continuity.
- Manual Adjustments:
- Zoom: Scale the image if necessary.
- Offset: Shift the cut point left or right to center asymmetrical content.
- PDF Compression: Slider to adjust PDF quality and reduce final file size.
- Color Support: Preserves the original color profile (e.g., CMYK) to ensure print fidelity.
- Intuitive Interface: Drag & drop files, real-time preview, and manual page reordering.
- Python 3.8 or higher installed.
- Clone or download this repository.
- Run the automatic startup script (Windows):
The script will automatically create a virtual environment (
run_app.bat
venv), install the necessary dependencies, and start the application.
If you prefer to do everything manually:
- Create an environment:
python -m venv venv - Activate it:
venv\Scripts\activate - Install packages:
pip install -r requirements.txt - Start the server:
python backend/main.py - Open browser at:
http://localhost:8000
- Upload: Drag & drop your JPEG images (spreads) into the upload area.
- Adjust:
- Use the Zoom and Offset sliders if the image is not perfectly centered.
- Check Bleed (3mm) if you need to send the file to a print shop. Click Update Preview to see the effect.
- Sort: Drag pages in the preview area to change the order if needed (e.g., cover at the beginning).
- Generate: Adjust quality (default 100%) and click Generate PDF. The file will be downloaded automatically.
- Backend: Python, FastAPI
- Image Processing: Pillow (PIL), img2pdf
- Frontend: HTML5, CSS3, Vanilla JS