@@ -7,18 +7,19 @@ Image Tools is a standalone, local-first raster editor for the [add·ideas Toolb
|
||||
- Open static JPEG, PNG and WebP images.
|
||||
- Inspect signatures, dimensions, animation, alpha, EXIF orientation and common metadata/profile markers before decode.
|
||||
- Refuse recognized animated or multi-picture input instead of silently discarding frames.
|
||||
- Crop with numeric controls and centered aspect presets.
|
||||
- Crop with numeric controls, centered aspect presets and a pointer/keyboard-adjustable overlay; zoom source and result together from 25–400% without changing export pixels.
|
||||
- Rotate in quarter turns and flip horizontally or vertically.
|
||||
- Resize by fit, center-cropped fill or exact dimensions.
|
||||
- Preview source and result side by side while keeping the last completed preview visible during updates.
|
||||
- Export PNG, JPEG or WebP with an explicit quality/background policy.
|
||||
- Apply one recipe to a bounded queue and download each completed result and its JSON operation report.
|
||||
- Save/load a strictly validated, versioned JSON recipe containing transform, output and metadata/colour policy.
|
||||
- Apply one recipe to a bounded queue; download results individually or build one collision-free ZIP containing images, per-image JSON reports and a batch manifest. ZIP assembly has its own 128 MiB input / 160 MiB output budget and is cancellable while reading or compressing.
|
||||
|
||||
Inputs are bounded before browser decoding: 20 files, 256 MiB per source, 512 MiB per queue, 32,768 pixels per edge, 40 megapixels, and a 512 MiB estimated working-memory budget. Image processing runs in a disposable module worker when OffscreenCanvas is available, with a main-thread capability fallback and a 120-second hard deadline.
|
||||
Inputs are bounded before browser decoding: 20 files, 256 MiB per source, 512 MiB per queue, 32,768 pixels per edge, 40 megapixels, and a 512 MiB estimated working-memory budget. Image processing runs through the shared cancellable disposable-worker protocol when OffscreenCanvas is available, with typed progress, a main-thread capability fallback and a 120-second hard deadline.
|
||||
|
||||
## Honest format and colour policy
|
||||
|
||||
Version 0.1 is intentionally static-only. GIF, AVIF, HEIC, JPEG XL, TIFF, animated PNG/WebP and recognized multi-picture JPEG are not flattened or partially exported.
|
||||
Version 0.1 is intentionally static-only. GIF, AVIF, HEIC, JPEG XL, TIFF, BMP, animated PNG/WebP and recognized multi-picture JPEG are not flattened or partially exported. The UI probes the exact native encoder MIME response and disables formats that the current browser cannot produce; header support is never presented as proof that decoding will succeed.
|
||||
|
||||
Exports are browser-native pixel re-encodes. Source EXIF, XMP, ICC, comments, thumbnails and trailing data are not intentionally copied, but Image Tools is not a privacy verifier. Browser canvas uses an 8-bit working representation and does not preserve arbitrary ICC profiles, HDR precision, original compression, or byte identity. JPEG is lossy; PNG is lossless only relative to the canvas pixels. Browser encoder output can vary.
|
||||
|
||||
@@ -38,7 +39,7 @@ The tests include generated JPEG/PNG/WebP header fixtures, malformed/over-limit
|
||||
|
||||
## Release
|
||||
|
||||
`npm run release:artifact` creates `release/image-tools-0.1.0.zip` and its checksum sidecar after all checks pass.
|
||||
`npm run release:artifact` creates `release/image-tools-0.2.0.zip` and its checksum sidecar after all checks pass.
|
||||
|
||||
## Licence
|
||||
|
||||
|
||||
Reference in New Issue
Block a user