开源推荐:LocalSqueeze - 隐私优先的本地图片压缩工具

还在把图片上传到云端压缩?试试 LocalSqueeze,一款完全在本地运行的图片压缩工具

作为开发者,这些场景你肯定不陌生:

  • 📸 博客配图:压缩图片,让网页加载飞快。
  • 🎨 UI设计:批量处理设计稿,瘦身文件大小。
  • 📱 移动应用:优化App内的图片资源。
  • 🌐 网站优化:减小图片体积,提升用户体验。

传统的在线压缩工具虽然方便, 比如作者经常用的tinify,但是使用起来还是会有一些问题:

  • 🔒 隐私顾虑:图片得先上传到别人服务器。
  • 🌐 依赖网络:没网就歇菜。
  • 💰 使用限制 :免费版通常有次数或大小限制(Web Pro <math xmlns="http://www.w3.org/1998/Math/MathML"> 39 , W e b U l t r a 39, Web Ultra </math>39,WebUltra149)。
  • ⏱️ 效率问题:上传下载费时间,批量操作麻烦。

而LocalSqueeze 是一款基于 Electron + React 构建的跨平台桌面图片压缩应用,正好解决了这些问题。所有的图片,从始至终都在自己电脑上处理。

核心优势

1. 绝对的隐私保护

图片不用上传到任何地方,所有处理都在本地

typescript 复制代码
// 所有处理都在本地完成,零网络传输
const processImage = async (imagePath: string) => {
  // 本地 Sharp 库处理,不涉及任何网络请求
  return await sharp(imagePath)
    .jpeg({ quality: 80 })
    .toBuffer();
};

2. 优秀的压缩效果

实测对比(2.1MB原图):

  • LocalSqueeze:104KB (省了 95%)

  • TinyPNG:175KB (省了 92%)

    肉眼基本看不出画质损失。

3. 强大的批量处理

  • 拖一堆图片进来,或者直接选个文件夹。
  • 后台默默并行处理,进度条看得见。
  • 处理完的统计结果一目了然。

功能介绍

  1. 首页可以查看处理过的图片数据统计,还展示了最近处理的图片。
  1. 图片处理页面可以拖拽图片,和选择图片,当点击开始处理时,会将选择图片进行处理,还会显示处理后的统计结果和处理后的图片结果。
  1. 压缩设置页面可以选择压缩的质量,输出格式,设置压缩后的文件名和尺寸
  1. 效果对比页面可以查看原始图片与压缩后的图片的对比,并排对比也可以手动对比
  1. 导出管理页面,可以批量选择图片并导出

🛠️ 技术架构

graph TD A[React UI] --> B[Electron Main Process] B --> C[Sharp Image Processing] B --> D[File System API] A --> E[TypeScript Type Safety] A --> F[Tailwind CSS Styling]

核心技术选型

  • Electron 37.2.1:跨平台桌面应用框架
  • React 19.1.0:现代化 UI 构建
  • TypeScript:类型安全保障
  • Tailwind CSS 4.0.4:原子化 CSS 框架
  • Sharp 0.34.3:高性能图片处理引擎
  • Electron Forge:打包发布

🚀 功能特性介绍

🎨 用户体验

  • 🌓 深色/浅色主题:深色主题很好看

  • 👁️ 实时预览对比:压缩前后可以进行对比,效果一目了然

  • ⚙️ 灵活配置:压缩质量、格式转换等参数可调,配置操作简洁明了

  • 📏 尺寸调整:支持按比例或固定尺寸缩放

  • 📊 压缩统计:详细的压缩报告和节省空间统计

  • 💾 批量导出:一键保存所有处理结果

📦 快速上手

开发者安装

bash 复制代码
# 克隆项目
git clone https://github.com/freeany/LocalSqueeze.git
cd LocalSqueeze

# 安装依赖
npm install

# 启动开发环境
npm run start

# 构建生产版本
npm run make

普通用户下载

为啥选择 LocalSqueeze呢?

与同类产品的对比

特性 LocalSqueeze TinyPNG Picdiet
🔒 隐私保护 ✅ 完全本地 ❌ 需要上传 ✅ 本地处理
💰 使用成本 ✅ 完全免费 ❌ 有限制 ✅ 免费
🚀 压缩效果 ✅ 优秀 ✅ 良好 ⚠️ 一般
🔧 自定义选项 ✅ 丰富 ❌ 有限 ⚠️ 基础
🌐 跨平台支持 ✅ Win/Mac/Linux ✅ Web ❌ 仅 Mac
📦 批量处理 ✅ 支持 ⚠️ 有限制 ✅ 支持

🌟 欢迎一起来玩:开源与贡献

LocalSqueeze 采用 MIT 开源协议,欢迎社区里的大家贡献和提issue:

bash 复制代码
# 项目结构清晰,方便理解和扩展
src/
├── main.ts           # Electron 主进程
├── preload.ts        # 安全桥接层
├── app.tsx           # React 应用入口
├── components/       # UI 组件库
├── views/            # 页面视图
└── server/           # 后端服务
    ├── compression/  # 压缩核心
    ├── ipc/          # 进程通信
    └── workers/      # 工作线程

🤝 怎么参与?

  • 🐛 发现Bug? 开个Issue说清楚。
  • 💡 有好点子? 来聊聊新功能。
  • 🔧 会写代码? 直接提PR改进。
  • 📖 文档不足? 帮忙写清楚点。

💭 写在最后

LocalSqueeze 不仅仅是一个图片压缩工具,更是对"本地优先"理念的践行。在这个数据满天飞的时代,能有一个 完全在本地运行、免费、压缩效果又好 的图片工具,真的很省心。LocalSqueeze 就是冲着这个目标去的,希望能帮你既压缩图片又保护隐私。

🌟 如果这个项目对你有帮助,欢迎给个 Star 支持一下!


📞 联系方式

让图片压缩回归本地,让隐私保护成为常态。

相关推荐
gnip12 小时前
脚本加载失败重试机制
前端·javascript
遗憾随她而去.12 小时前
Uni-App 页面跳转监控实战:快速定位路由问题
前端·网络·uni-app
码农学院12 小时前
MSSQL字段去掉excel复制过来的换行符
前端·数据库·sqlserver
颜酱13 小时前
实现一个mini编译器,来感受编译器的各个流程
前端·javascript·编译器
妄小闲13 小时前
网页源代码 企业网站源码 html源码网站
前端·html
爱上妖精的尾巴13 小时前
5-16WPS JS宏 map数组转换迭代应用-1(一维嵌套数组结构重组)
开发语言·前端·javascript·wps·jsa
OEC小胖胖13 小时前
交互的脉络:小程序事件系统详解
前端·微信小程序·小程序·微信开放平台
DokiDoki之父14 小时前
web核心—HTTP
前端·网络协议·http
咖啡の猫14 小时前
Vue 简介
前端·javascript·vue.js
Moment14 小时前
写代码也能享受?这款显示器让调试变得轻松又高效!😎😎😎
前端·后端