Pic Smaller:开源在线图像压缩工具网站源码 浏览器本地压缩

Pic Smaller:开源在线图像压缩工具网站源码 浏览器本地压缩

Pic Smaller (图小小)是开源社区Github上的一个在线图像压缩工具网站源码,基于 Vite+React 技术栈开发,支持 JPEG/PNG/WebP/Gif 四种格式的图片压缩。

Pic Smaller是一款超级好用的在线图片压缩工具。其用户界面直观且支持压缩配置。同时,由于是基于浏览器本地进行图片压缩,没有任何服务端交互,图片不会被上传到远程服务器,因此是完全安全的。

项目下载:

https://github.com/joye61/pic-smaller.git

技术实现

  • JPEG/WebP 压缩:利用了现代浏览器自带的功能,叫离屏渲染技术 OffscreenCanvas
  • PNG 压缩:采用了一个第三方的 Webassembly 实现,底层是 libPNG
  • Gif 压缩:采用了一个第三方的 Webassembly 实现,底层是 Gifsicle

用法

Pic smaller 已部署到vercel,您可以通过访问网址pic-smaller.vercel.app来使用它。由于 GFW,中国用户可以通过访问网址picsmaller.com来使用它

二开

这是一个纯vite + React项目,你必须先熟悉它们。Pic small 使用现代浏览器技术,例如OffscreenCanvasWebAssemblyWeb Worker。在开发之前你也应该熟悉它们。

# Clone the repo
git clone https://github.com/joye61/pic-smaller.git

# Change cwd
cd ./pic-smaller

# Install dependences
npm install

# Start to develop
npm run dev

部署

如果你想在自己的服务器上独立部署这个项目,下面基于Docker的文档,以及Dockerfile脚本已经过测试。在项目根目录中,按照说明启动 docker 应用程序

# Build docker image from Dockerfile
docker build -t picsmaller .

# Start a container
docker run -p 3001:3001 -d picsmaller

现在您可以通过http://127.0.0.1:3001访问该项目。如果你想让你的项目对所有人都可以访问,你需要准备一个指向你本机的域名,然后通过nginx这样的反向代理服务器代理到本机的3001端口。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

给TA打赏
共{{data.count}}人
人已打赏
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索
Pic Smaller:开源在线图像压缩工具网站源码 浏览器本地压缩