Photo Scan Cropper is a local desktop utility for Windows. It detects rectangular printed photos on scanned sheets, lets the user correct the detected frames, and exports each photo as a separate JPEG file.
The application works locally. It does not upload photos, connect to online services, collect analytics, or include advertising.
Русская инструкция: README_RU.md
- Russian and English interface; choose a language at startup or switch it from the main window;
- open one file or several files at once;
- append more scans without losing existing manual corrections;
- JPG, JPEG, PNG, BMP, WEBP, TIFF and PDF support;
- multi-page TIFF and PDF support;
- automatic detection of rectangular photos placed at different angles;
- manual corner correction while preserving rectangular geometry;
- frame angle correction using the central circular handle or the
−and+buttons; - zoom with the mouse wheel and pan with the pressed middle mouse button;
- manual addition and deletion of rectangles;
- final review dialog with 90° orientation changes before export;
- collision-safe export: existing files are not overwritten.
- Install Python 3.11 or later from python.org.
- During installation, enable Add Python to PATH.
- Extract this archive to a separate folder.
- Double-click
install_and_run.batonce. - For later launches, use
run.bat.
- Double-click
build_exe.bat. - Wait until the build is complete.
- Open
dist\PhotoScanCropper. - Distribute the whole
PhotoScanCropperfolder, not onlyPhotoScanCropper.exe.
A portable ZIP can be created by double-clicking package_portable.bat after the EXE build.
Run:
run_security_checks.bat
This performs syntax checks, algorithm regression tests, localization tests, export safety tests and a conservative static scan for network, shell execution, dynamic code execution and unsafe deserialization APIs.
Read SECURITY.md, PRIVACY.md and SECURITY_AUDIT.md before publishing a release.
For public releases, also run run_extended_code_audit.bat and run_dependency_audit.bat, then follow RELEASE_CHECKLIST.md. The portable build includes readable third-party license texts.
MIT License. See LICENSE.
The startup language selector is now a visible standalone window. If the application still does not open, run run_debug.bat and review launch_debug.log.
The Windows packaging scripts now copy license notices for the embedded Python,
Tcl and Tk runtime in addition to the runtime Python packages. Before creating a
public ZIP, package_portable.bat runs verify_portable_release.py and stops if
a required notice is missing.