Photomaker 是一个图片压缩组件, 支持Vuepress, 命令行等多种处理方式。支持jpg, gif, png等多种图片格式。
目前只支持 vuepress v2.x版本 和 命令行
npm
npm install photomaker --save-dev
yarn
yar add photomaker -D
pnpm
pnpm add -D photomaker
// vuepress v2.x
// docs/.vuepress/client.ts
import { vuepressPhotomaker } from "photomaker";
export default defineUserConfig({
plugins: [
vuepressPhotomaker({
// 这里可以设置参数
})
],
});
更多例子
// vuepress v2.x
// docs/.vuepress/client.ts
import { vuepressPhotomaker } from "photomaker";
export default defineUserConfig({
plugins: [
vuepressPhotomaker({
ext: 'jpg,png,gif', // 处理jpg,png,gif为后缀的图片文件
webp: true, // 转成 webp文件格式
quality: 80,
resize: {
width: 500,
height: 500,
fit: "contain",
background: "#ffffff00",
},
})
],
});
photomaker 只处理本地图片, 不支持远程图片.
只对 app.dir.public() 路径下所有相关的图片进行处理, 例如是: docs/.vuepress/public 这个路径。
photomaker 不会改变原有图片, 在app.dir.public() 目录下新建一个 photomaker
文件夹, 存储和引用这些新的文件.
npm install photomaker -g
photomaker -i ./input -o ./output
i
需要处理的路径, 必填
o
需要输出的路径, 选填, 默认 photomaker
e
需要处理的文件格式, 选填, 默认 jpg,gin,jpeg,png
p
是否需要转成 webp, 选填, 默认 false
q
图片压缩质量, 选填, 默认 80
w
图片缩放高度, 选填
h
图片缩放宽度, 选填
f
图片缩放适配方式, 选填
b
图片缩放背景填充颜色, 选填, 默认黑色
详细参数说明请查看下面的通用参数说明
默认会读取 pmConfig.json 文件, 这个优先级别最高, 存在文件, 会无视命令行的参数。
在执行的当前目录, macos为例 /Users/xxx/project/
目录下, 新建 pmConfig.json
具体内容是如下:
{
"input": "./input",
"output": "./output",
"webp": true,
"quality": 80,
"resize": {
"width": 500,
"height": 500,
"fit": "contain",
"background": "#ffffff00"
}
}
input
String类型, 必填, 需要处理的路径. 注: 只支持命令行配置文件方式
output
String类型, 选填, 需要输出的路径, 默认是 photomaker, 注: 只支持命令行配置文件方式
ext
String类型, 选填, 这个参数需要图片格式文件, 默认是 jpg,jpeg,gif,png, 例: jpg 这表示只处理jpg文件
quality
Int类型, 选填, 图片压缩质量, 默认 80
webp
Boolean类型, 选填, 这个参数表示是否把原有的png/gif/jpg格式, 统一转成webp格式, 默认是 false
resize
对象类型, 选填, 对图片进行缩放处理.
resize.width
Int类型, 选填, 对图片进行宽度缩放处理.
resize.height
Int类型, 选填, 对图片进行高度缩放处理.
resize.fit
String类型, 选填, 对图片进行缩放处理适配方式, 默认cover, 其他包括 contain, fill, inside, outside
如果同时提供了 width 和 height , 则图像应适合这些宽度和高度的可能方法如下:
resize.background
String类型, 选填, 当适配方式 fit 是 contain时, 多出的区域由指定这个背景色来填充, 默认是黑色(#000000)
只支持十六进制的颜色
创作的路上, 即艰苦, 又耗时。给我买杯咖啡, 给我打打气, 助我继续努力输出更多更有价格的内容, 非常感谢。
微信支付 ![wechat](https://www.itomtan.com/posts/other/wechat-pay.jpeg) | 支付宝支付 ![apipay](https://www.itomtan.com/posts/other/alipay.png) |