Spaces:
Sleeping
Sleeping
Download image_resizer/processor.py from vishakhad30/ImageResizer: direct link, hf CLI and curl.
- Browser
- Download file 1.14 kB
-
https://huggingface.co/spaces/vishakhad30/ImageResizer/resolve/main/image_resizer/processor.py
- Command line
-
hf download hf://spaces/vishakhad30/ImageResizer/image_resizer/processor.py
-
curl -L -o processor.py https://huggingface.co/spaces/vishakhad30/ImageResizer/resolve/main/image_resizer/processor.py
1.14 kB
| """High-level image processing entry points (no UI dependencies).""" | |
| from __future__ import annotations | |
| import os | |
| import shutil | |
| import tempfile | |
| from image_resizer.models import ImageItem, ProcessResult | |
| from image_resizer.pipeline import process_and_zip | |
| def process_uploaded_images( | |
| files, | |
| fmt: str, | |
| w: int, | |
| h: int, | |
| use_default: bool = False, | |
| ) -> ProcessResult: | |
| """Copy uploaded files to a temp dir and process them.""" | |
| tmp = tempfile.mkdtemp() | |
| data: list[ImageItem] = [] | |
| for f in files: | |
| src = str(f) | |
| dst = os.path.join(tmp, os.path.basename(src)) | |
| shutil.copyfile(src, dst) | |
| data.append({ | |
| "url": dst, | |
| "name": os.path.splitext(os.path.basename(dst))[0], | |
| }) | |
| return process_and_zip(data, fmt, w, h, use_default=use_default) | |
| def process_single_url_image( | |
| url: str, | |
| fmt: str, | |
| w: int, | |
| h: int, | |
| use_default: bool = False, | |
| ) -> ProcessResult: | |
| """Process a single image URL.""" | |
| if not url.strip(): | |
| return ProcessResult([], None, "No URL provided", None) | |
| return process_and_zip( | |
| [{"url": url.strip(), "name": "single"}], | |
| fmt, w, h, | |
| use_default=use_default, | |
| ) | |