piapia123
zh

图片滤镜

图像

所有处理都在浏览器本地完成,数据不上传服务器

把图片拖到这里,或点击选择

也可以按 Ctrl/⌘ + V 粘贴截图

PNG / JPEG / WebP / GIF / BMP / AVIF · 单张不超过 30 MB

十种滤镜一键套用:老照片、褪色、负片、X 光、高对比、冷调、暖调、黑白、棕褐,以及一个只调对比与饱和度的自定义档。强度 0–100% 可调,还可以打开保留原图对比,免得滤镜把暗部压死、丢掉阴影里的层次。 这些滤镜全部是逐像素算出来的,不是交给 `ctx.filter`。 原因是浏览器支持不一致:`ctx.filter = 'sepia(0.8)'` 在 Chrome 上有效,在某些 Firefox 与 Safari 版本上却不支持 —— 而不支持时不会报错、也不会抛异常,只是没有效果,用户点了「老照片」看到的还是原图,却没有任何线索。所以黑白、负片、棕褐、亮度对比度这些核心效果,用的是自己写的矩阵与曲线,三种浏览器出来的结果一致。 老照片与 X 光的暗角按到中心的归一化距离算:横轴按半宽、纵轴按半高各自归一,于是 16:9 的横图与 1:1 的方图得到同样形状的暗角,而不是被拉成扁椭圆。全部在本机完成,图片不上传。

功能

  • 十种滤镜:老照片、褪色、负片、X 光、高对比、冷调、暖调、黑白、棕褐、自定义
  • 强度 0–100% 线性可调,实时看到效果
  • 保留原图对比开关:暗部不会被滤镜压死
  • 滤镜用像素矩阵与曲线实现,不依赖 ctx.filter(浏览器支持不一致且失败时静默)
  • 老照片与 X 光的暗角按归一化距离算,不同宽高比形状一致
  • 带透明的 PNG 加滤镜后仍然透明
  • 结果显示滤镜、强度与体积
  • 图片不上传,断网也能用

使用方法

  1. 把图片拖进来
  2. 选一个滤镜,调强度
  3. 暗部发闷就打开「保留原图对比」
  4. 点「下载」保存结果

常见问题

为什么不用浏览器自带的滤镜(ctx.filter)?
因为各浏览器支持不一致,而且不支持时是静默的 —— 设置了 sepia 却没效果时不会报错、不会抛异常,用户只会觉得工具坏了。所以核心滤镜都用自己写的像素矩阵与曲线算,结果在 Chrome、Firefox、Safari 上一致,也能被单测钉住。
「保留原图对比」什么时候该开?
当滤镜把画面压得发闷时。褪色与老照片都会抬高黑位,原本阴影里的层次会被抹平;打开这个开关会把原图相对结果的亮度偏差加回去,明暗起伏回来了,色相不变。想要强烈的风格化效果就别开。
强度调到多少合适?
多数情况 70% 到 100% 就有明显效果。强度是原图与满强度结果之间的线性混合,所以 50% 大约是「一半的味道」——负片、黑白这类非黑即白的效果要 100% 才彻底,冷暖调这类轻微的 40% 到 70% 更自然。
图片会上传吗?
不会。滤镜在浏览器里逐像素计算,全程在本机内存里,断网也能用。

相关工具