图片切割
把一张图片切成等分并打包成 zip 下载。全部在浏览器内完成,图片不会上传。
在你的浏览器中运行
选择一张图片,切割会在你的设备上完成。
除不尽的时候,余数放在哪里
大部分图片都不是刚好整除的。一张宽 1000 px 的图横向切成 3 等分,每块要 333.33 px, 但像素没有小数——所以余数一定要有地方去。
最直觉的做法是每块都取整数,剩下的全部丢给最后一块。1000 ÷ 3 这样没问题:333、 333、334。但 1000 ÷ 7 就不行了——前六块各 142 px,最后一块 148 px,比邻居宽了 4%,看起来就像坏掉。
这一页的做法是把余数平均分散,一次一个像素地分给前面几块。同样的 1000 ÷ 7 会切成 143、143、143、142、143、143、143。任何两块的差距都不会超过 1 px,而且所有块 加起来一定等于原图——不会裁掉任何东西,右边也不会有一列像素凭空消失。
状态列会直接告诉你是哪一种情况:整除就说整除,不整除就把宽度范围写出来。
档名编号让它们能排回原样
每个文件都以列与行编号,photo-r2c3.png 就是第二列、第三行那一块。编号会依格数补
零,所以切成 12 行时是 c01 到 c12,而不是 c1 到 c12。
这件事比听起来重要。没有补零的话,c10 在几乎所有文件管理员、以及所有用字符串排序的
程序语言里都会排在 c2 前面——切好的图就在这一刻变成拼图。
格式差在哪里
PNG 是默认值,也是大面积纯色、锐利边缘或需要透明背景时的正确答案——屏幕截图、 接口设计稿、sprite sheet、图表都属于这类。它是无损的,每一块就是原本位置上的那些 像素。
JPG 对照片来说文件更小,但没有透明度:透明的地方会先被填成白色再编码。它也会重新 压缩,所以每一块都会损失一点画质,而且救不回来。
WebP 两者兼具,目前的浏览器都读得到。
什么时候会用到
- 社群九宫格——把一张图切成 3×3 或 3×1,分别发布后在个人页面上会拼回完整的图。
- Sprite sheet——把一张图集切回一张张的单格。
- 大张图表或地图,分成好几张纸打印再拼起来。
- 很长的屏幕截图,切成方便传送的大小。
图片不会离开你的设备
图片的解码、切割与打包全都在这个页面里完成。没有任何上传,压缩包也是在你自己的机器 上、在内存里组出来的。