压缩图片
对单张 JPEG/PNG/WebP 生成确定性压缩计划:质量滑条、真实导出尺寸、EXIF 方向归一化、输出字节与诚实的节省报告。输出比输入更大时只提示「未节省」。
输入与参数
image— 图像文件quality— 质量(1–100)targetWidth— 目标宽度(px,留空不改)lockAspect— 锁定宽高比backgroundColor— 透明区底色(#RRGGBB)outputBytes— 输出实测字节(可选,用于校验「未节省」)
真实示例
JPEG 2000×1000, 1_800_000 字节, quality=75, outputBytes=2_100_000
→ {"output":{"bytes":2100000,"format":"jpeg"},"savings":{"saved":false,"statusText":"未节省","percent":null,"message":"输出比输入大 300000 字节(2100000 > 1800000),未节省"}}
限制与失败处理
单图 20 MiB / 24 MP 提前拒绝;不上传、不批量。当前无真实编码器,输出为 JSON 计划(downloadableImage=false),不可作为压缩后的图片使用;真实编码未实测。AVIF 默认关闭。
FAQ
快速拖动质量滑条会得到多次输出吗?
不会。每次运行取得单调递增的 runId/版本号,只有最新版本可以提交结果;过期结果以 STALE_RESULT 丢弃,不覆盖新参数。
会有虚假的「节省 99%」吗?
不会。savingsReport 在 output>=input 时返回 percent=null、pseudoPercent=null 与「未节省」状态;只有真实变小才计算百分比。