Skip to main content

Batch processing image files by utilizing Pillow / PIL library

Project description

batch_img

Batch processing (resize, rotate, 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.

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 -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

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:
  --version  Show this tool's version.
  --help     Show this message and exit.

Commands:
  border  Add internal border to image file(s), not expand the size.
  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 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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

batch_img-0.0.8.tar.gz (12.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

batch_img-0.0.8-py3-none-any.whl (15.8 kB view details)

Uploaded Python 3

File details

Details for the file batch_img-0.0.8.tar.gz.

File metadata

  • Download URL: batch_img-0.0.8.tar.gz
  • Upload date:
  • Size: 12.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for batch_img-0.0.8.tar.gz
Algorithm Hash digest
SHA256 1994793fad3c1f2c28ba97a5b8db5b100b0c68a9eb19cc65c175dc27858b55fb
MD5 47d999e1db2df0034088e1f9e7e19b86
BLAKE2b-256 a3c0802efec160d0f0f18f2405234d476ef15b455bd5fa4dc9eeedb8d3c86db5

See more details on using hashes here.

File details

Details for the file batch_img-0.0.8-py3-none-any.whl.

File metadata

  • Download URL: batch_img-0.0.8-py3-none-any.whl
  • Upload date:
  • Size: 15.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for batch_img-0.0.8-py3-none-any.whl
Algorithm Hash digest
SHA256 f8cee51c8233941ac04ec1be0fe01c0617bc3c45ede5a0c90e4ee7166e51b382
MD5 c1006c54315c2e2c971af88b19153549
BLAKE2b-256 b9b72ca45ed0f715f66285ad9e6b860794293f505832090ee571f597c873639f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page