使用 Node.js 压缩图片

前端面试题包括ECMScript,TypeScript,Nodejs,React,Webgl,Webpack,Threejs等还在整理中,在线地址前端面试题源码地址大家多多支持才有动力给大家分享更多好的面试题。

安装依赖

首先,确保安装 sharp 库:

bash 复制代码
npm install sharp

压缩图片的方法

js 复制代码
const sharp = require('sharp');

const compressImage = async (inputPath, outputPath, quality = 80) => {
  try {
    await sharp(inputPath)
      .jpeg({ quality }) // 你也可以使用 .png() 或 .webp() 等
      .toFile(outputPath);
    console.log('图片压缩完成:', outputPath);
  } catch (error) {
    console.error('压缩出错:', error);
  }
};

// 使用示例
compressImage('input.jpg', 'output.jpg');

使用说明

  • inputPath:原始图片路径
  • outputPath:压缩后图片保存路径
  • quality:压缩质量(默认值为 80)
相关推荐
WYiQIU33 分钟前
面了一次字节前端岗,我才知道何为“造火箭”的极致!
前端·javascript·vue.js·react.js·面试
qq_3168377533 分钟前
uniapp 观察列表每个元素的曝光时间
前端·javascript·uni-app
小夏同学呀35 分钟前
在 Vue 2 中实现 “点击下载条码 → 打开新窗口预览 → 自动唤起浏览器打印” 的功能
前端·javascript·vue.js
芳草萋萋鹦鹉洲哦36 分钟前
【vue】导航栏变动后刷新router的几种方法
前端·javascript·vue.js
zero13_小葵司41 分钟前
JavaScript性能优化系列(八)弱网环境体验优化 - 8.3 数据预加载与缓存:提前缓存关键数据
javascript·缓存·性能优化
1***y1781 小时前
Vue项目性能优化案例
前端·vue.js·性能优化
Irene19911 小时前
FileList 对象总结(附:不支持迭代的类数组对象表)
javascript·类数组对象·filelist·不支持迭代
谢尔登1 小时前
【CSS】样式隔离
前端·css
百***58842 小时前
Redis 通用命令
前端·redis·bootstrap
Liu.7742 小时前
vue3 路由缓存导致onMounted无效
前端·javascript·vue.js