Files
tauri-meeting/vite/viteImageminOption.ts
O昵称重要吗O 78af453fe1 chore: 初始化项目基础结构和资源文件
- 添加项目图标文件(app-icon.png、各平台图标)
- 配置开发环境文件(.env、.nvmrc、.npmrc)
- 添加静态资源文件(背景图片、字体、音频)
- 初始化Tauri后端结构(build.rs、main.rs、模块文件)
- 配置前端项目结构(TypeScript、Vue组件、样式)
- 添加Node.js API服务基础结构
- 配置构建和开发工具(vite、prettier、gitignore)
2026-03-13 10:03:05 +08:00

58 lines
1.5 KiB
TypeScript

import type { PluginOption } from 'vite';
import { ViteImageOptimizer } from 'vite-plugin-image-optimizer';
/**
* 打包图片压缩
*/
export function viteImageminOption(): PluginOption {
return ViteImageOptimizer({
logStats: false,
gif: {},
png: {
quality: 90,
},
jpeg: {
quality: 90, // 设置 jpg 压缩质量
},
webp: {
quality: 80,
lossless: true,
},
svg: {
plugins: [
{
name: 'preset-default',
params: {
overrides: {
// 保留关键属性
removeViewBox: false, // 保持响应式能力
removeTitle: false, // 保留可访问性
removeDesc: false, // 保留可访问性
cleanupIds: false, // 防止ID被修改
collapseGroups: false, // 保留分组结构
// 优化配置
convertPathData: {
// 路径优化
floatPrecision: 2, // 保留2位小数精度
},
convertTransform: {
// 变换优化
floatPrecision: 2,
},
},
},
},
// 额外插件
'removeDimensions', // 移除冗余的width/height
'sortAttrs', // 属性排序提高压缩率
{
name: 'removeAttrs',
params: {
attrs: 'data-.+', // 保留所有data-属性
preserveCurrentColor: true,
},
},
],
},
});
}