Batch processing (resize, rotate, remove GPS, add border) image files (HEIC, JPG, PNG)
Project description
batch_img
Batch processing (resize, rotate, remove GPS, add border) image files (HEIC, JPG, PNG) by utilizing Pillow / PIL library. Resize, rotate, or add border to a single image file or all image files in a folder. Tested on macOS and Windows.
Installation
One Time Setup
One time installation of the uv tool to prepare for All future Python tools installation.
Install uv tool by its standalone installers:
# On macOS and Linux.
curl -LsSf https://astral.sh/uv/install.sh | sh
# On Windows (PowerShell).
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
$env:Path = "C:\Users\{your_user_name}\.local\bin:$env:Path"
uv venv
.venv\Scripts\activate
Install the batch_img tool
Install the batch_img tool from PyPI:
uv pip install --upgrade batch_img
Usage
Sample command lines:
✗ batch_img --version
0.0.8
✗ batch_img rotate --angle 90 ~/Downloads/IMG_0070.HEIC
...
✅ Processed the image file(s)
Help
Top level commands help:
✗ batch_img --help
Usage: batch_img [OPTIONS] COMMAND [ARGS]...
Options:
--update Update the tool to the latest version.
--version Show the tool's version.
--help Show this message and exit.
Commands:
border Add internal border to image file(s), not expand the size.
no-gps Remove GPS location info in image file(s).
resize Resize image file(s).
rotate Rotate image file(s).
The border sub-command CLI options:
✗ batch_img border --help
Usage: batch_img border [OPTIONS] SRC_PATH
Add internal border to image file(s), not expand the size.
Options:
-bw, --border_width INTEGER RANGE
Add border to image file(s) with the
border_width. 0 - no border. [default: 5;
0<=x<=30]
-bc, --border_color TEXT Add border to image file(s) with the
border_color string. [default: gray]
-o, --output TEXT Output file path. If not specified, replace
the input file. [default: ""]
--help Show this message and exit.
The no-gps sub-command CLI options:
✗ batch_img no-gps --help
Usage: batch_img no-gps [OPTIONS] SRC_PATH
Remove GPS location info in image file(s).
Options:
-o, --output TEXT Output file path. If not specified, replace the input
file. [default: ""]
--help Show this message and exit.
The resize sub-command CLI options:
✗ batch_img resize --help
Usage: batch_img resize [OPTIONS] SRC_PATH
Resize image file(s).
Options:
-l, --length INTEGER RANGE Resize image file(s) on original aspect ratio to
the length. 0 - no resize. [default: 0; x>=0]
-o, --output TEXT Output file path. If not specified, replace the
input file. [default: ""]
--help Show this message and exit.
The rotate sub-command CLI options:
✗ batch_img rotate --help
Usage: batch_img rotate [OPTIONS] SRC_PATH
Rotate image file(s).
Options:
-a, --angle [0|90|180|270] Rotate image file(s) to the clockwise angle. 0 -
no rotate. [default: 0]
-o, --output TEXT Output file path. If not specified, replace the
input file. [default: ""]
--help Show this message and exit.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file batch_img-0.1.5.tar.gz.
File metadata
- Download URL: batch_img-0.1.5.tar.gz
- Upload date:
- Size: 15.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7a65516d23b170949930379a8490865d79139f50e3cab2c80adb052cf9a4f5a4
|
|
| MD5 |
15dd45528397a7177a300a4acf50b8c0
|
|
| BLAKE2b-256 |
cb2471ffc7bc5d8f9b7ae4bf6b4c1dd4a5607a512de68b42cae853fd47421c9c
|
File details
Details for the file batch_img-0.1.5-py3-none-any.whl.
File metadata
- Download URL: batch_img-0.1.5-py3-none-any.whl
- Upload date:
- Size: 20.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
593344a71adb63c93df0425f7cedeeedb1471d7a89ea72a5e807bb383ca854a8
|
|
| MD5 |
ab92f794ddbdb4185d6bc417a4dcd78f
|
|
| BLAKE2b-256 |
b6b490842006ed3be71ca31bfb3d2e6eab76c1069b83d92eaaac7c74399445ea
|