Tinypng CLI is a command-line tool that utilizes the Tinypng.com web version to compress images and support multiple format conversions and archive operations.
🇨🇳 查看中文版介绍
- Supports multiple image formats: png, jpg, jpeg, webp
- Convenient compression methods: Single image, entire folder, or archive
- Flexible image format conversion: Mutual conversion between png, jpg, jpeg, webp
- Archive decompression: Supports tar, zip, tgz formats
- Packaging of compressed images: Generate tar, zip, tgz formats for archives
# npm
npm i @julytian/tinypng-cli -g
# yarn
yarn i @julytian/tinypng-cli -g
# pnpm
pnpm i @julytian/tinypng-cli -g
$ tinypng <file> [options]
# Help information
$ tinypng --help
# Version information
$ tinypng --version
# Language setting for output (zh, en)
$ tinypng -l zh
# Compress a single image
$ tinypng a.png
# Compress a single image and convert png to jpeg
$ tinypng a.png -c jpeg
# Compress a single image and generate zip archive
$ tinypng a.png -z
# Compress a single image and generate tar archive
$ tinypng a.png -z tar
# Compress images in directory a
$ tinypng a
# Recursively traverse directory a, compress all images in it
$ tinypng a -r
# Compress images in the directory and generate a zip archive
$ tinypng a -z
# Compress all images in the directory and generate a zip archive
$ tinypng a -r -z
# Compress all images in the directory and generate a tgz archive
$ tinypng a -r -z tgz
# Decompress a zip archive and compress images in it
$ tinypng a.zip
# Decompress a zip archive and compress images in it, and regenerate a zip archive
$ tinypng a.zip -z
# Decompress a zip archive and compress images in it, and regenerate a tar archive
$ tinypng a.zip -z tar
- -h, --help: Show help information.
- -v, --version: Show version number.
- -z, --zip : Generate archive of the specified format (zip, tar, tgz).
- -c, --convert : Convert images to the specified format (png, jpg, jpeg, webp).
- -r, --recursive: Recursively traverse folders.
- -l, --language : Set the output language (zh, en).
# Compress the image named "a.png"
$ tinypng a.png
# Compress the image named "a.png" and convert it to jpeg
$ tinypng a.png -c jpeg
# Compress the image named "a.png" and generate a zip archive
$ tinypng a.png -z
# Compress all images in the folder named "images"
$ tinypng images -r
# Decompress the zip archive named "images.zip" and compress the images inside
$ tinypng images.zip
This project is licensed under the MIT License.