# Icon Resize
[![ci-badge]][ci-url] [![pypi-badge]][pypi-url] [![black-badge]][black-url] ![mit]
![screenshot](https://i.imgur.com/K00hCxN.png)
> CLI to create lossless icons in multiple sizes
[mit]: https://img.shields.io/github/license/hoishing/icon-resize
[black-badge]: https://img.shields.io/badge/code%20style-black-000000.svg
[black-url]: https://github.com/psf/black
## Features
- resize icon file(png/jpg) to multiple sizes
- lossless compression for png files
- maintain aspect ratio and transparency
## Prerequisite
- macOS or Linux (Windows not tested)
- python3.10+
- [Image Magick][magick] `brew install imagemagick`
## Installation
`pip install icon-resize`
## Usage
```shell
# default resize to 256, 128, 64
icon-resize mic-512
# specify resize to 128, 64
icon-resize mic-512 --sizes "128,64"
# save to 'mic' folder with default sizes
icon-resize mic-512 --out-folder mic/
# enable autocomplete in current session
eval "$(_ICON_RESIZE_COMPLETE=zsh_source icon_resize)"
```
## Technical Details
- use [Typer][typer] for CLI and help docs generation
- use [Image Magick][magick] for both resize and compress images
## Questions?
Open a [github issue] or ping me on [Twitter ![twitter-icon]][Twitter]
[github issue]: https://github.com/hoishing/icon-resize-cli/issues
[Twitter]: https://twitter.com/intent/tweet?text=https://github.com/hoishing/icon-resize-cli/%20%0D@hoishing
[twitter-icon]: https://api.iconify.design/logos/twitter.svg?width=20
[typer]: https://typer.tiangolo.com
[magick]: https://imagemagick.org
[pypi-badge]: https://img.shields.io/pypi/v/icon-resize
[pypi-url]: https://pypi.org/project/icon-resize/
[ci-badge]: https://github.com/hoishing/icon-resize/actions/workflows/ci.yml/badge.svg
[ci-url]: https://github.com/hoishing/icon-resize/actions/workflows/ci.yml
Raw data
{
"_id": null,
"home_page": "https://github.com/hoishing/icon-resize",
"name": "icon-resize",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.12",
"maintainer_email": null,
"keywords": "png, cli, resize",
"author": "Kelvin Ng",
"author_email": "hoishing@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/95/4f/dc4eb4bb149f2a6d8cd32701298abe2803035e6010b2cfb7fdd4caa033f0/icon_resize-0.2.3.tar.gz",
"platform": null,
"description": "# Icon Resize\n\n[![ci-badge]][ci-url] [![pypi-badge]][pypi-url] [![black-badge]][black-url] ![mit]\n\n![screenshot](https://i.imgur.com/K00hCxN.png)\n\n> CLI to create lossless icons in multiple sizes\n\n[mit]: https://img.shields.io/github/license/hoishing/icon-resize\n[black-badge]: https://img.shields.io/badge/code%20style-black-000000.svg\n[black-url]: https://github.com/psf/black\n\n## Features\n\n- resize icon file(png/jpg) to multiple sizes\n- lossless compression for png files\n- maintain aspect ratio and transparency\n\n## Prerequisite\n\n- macOS or Linux (Windows not tested)\n- python3.10+\n- [Image Magick][magick] `brew install imagemagick`\n\n## Installation\n\n`pip install icon-resize`\n\n## Usage\n\n```shell\n# default resize to 256, 128, 64\nicon-resize mic-512\n\n# specify resize to 128, 64\nicon-resize mic-512 --sizes \"128,64\"\n\n# save to 'mic' folder with default sizes\nicon-resize mic-512 --out-folder mic/\n\n# enable autocomplete in current session\neval \"$(_ICON_RESIZE_COMPLETE=zsh_source icon_resize)\"\n```\n\n## Technical Details\n\n- use [Typer][typer] for CLI and help docs generation\n- use [Image Magick][magick] for both resize and compress images\n\n## Questions?\n\nOpen a [github issue] or ping me on [Twitter ![twitter-icon]][Twitter]\n\n[github issue]: https://github.com/hoishing/icon-resize-cli/issues\n[Twitter]: https://twitter.com/intent/tweet?text=https://github.com/hoishing/icon-resize-cli/%20%0D@hoishing\n[twitter-icon]: https://api.iconify.design/logos/twitter.svg?width=20\n[typer]: https://typer.tiangolo.com\n[magick]: https://imagemagick.org\n[pypi-badge]: https://img.shields.io/pypi/v/icon-resize\n[pypi-url]: https://pypi.org/project/icon-resize/\n[ci-badge]: https://github.com/hoishing/icon-resize/actions/workflows/ci.yml/badge.svg\n[ci-url]: https://github.com/hoishing/icon-resize/actions/workflows/ci.yml\n",
"bugtrack_url": null,
"license": null,
"summary": "CLI to create lossless icons in multiple sizes",
"version": "0.2.3",
"project_urls": {
"Homepage": "https://github.com/hoishing/icon-resize",
"Repository": "https://github.com/hoishing/icon-resize"
},
"split_keywords": [
"png",
" cli",
" resize"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "6c03ad962cb8c0ec06e3cf8ec908c106cae7446acdb78eea69b8aad54af1fa14",
"md5": "595a78ece2fe1446af580ab731af57d1",
"sha256": "a868827320a84e0cd879cc1c10ea070b36ef8e9b15da7118a2da1106dc13f005"
},
"downloads": -1,
"filename": "icon_resize-0.2.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "595a78ece2fe1446af580ab731af57d1",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.12",
"size": 3749,
"upload_time": "2024-08-17T05:17:45",
"upload_time_iso_8601": "2024-08-17T05:17:45.355332Z",
"url": "https://files.pythonhosted.org/packages/6c/03/ad962cb8c0ec06e3cf8ec908c106cae7446acdb78eea69b8aad54af1fa14/icon_resize-0.2.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "954fdc4eb4bb149f2a6d8cd32701298abe2803035e6010b2cfb7fdd4caa033f0",
"md5": "e411a4b74a4d8b68979edf0602fce013",
"sha256": "1c64965e5fcf2f2b5fa3b8a1792cf510e32bd7e49a877131814c1248f0ee93b7"
},
"downloads": -1,
"filename": "icon_resize-0.2.3.tar.gz",
"has_sig": false,
"md5_digest": "e411a4b74a4d8b68979edf0602fce013",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.12",
"size": 3048,
"upload_time": "2024-08-17T05:17:46",
"upload_time_iso_8601": "2024-08-17T05:17:46.687394Z",
"url": "https://files.pythonhosted.org/packages/95/4f/dc4eb4bb149f2a6d8cd32701298abe2803035e6010b2cfb7fdd4caa033f0/icon_resize-0.2.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-08-17 05:17:46",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "hoishing",
"github_project": "icon-resize",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "icon-resize"
}