63 lines
2.8 KiB
JavaScript
63 lines
2.8 KiB
JavaScript
// 步骤配置
|
||
export const steps = [
|
||
{
|
||
name: "文件格式",
|
||
type: "multiselect",
|
||
message: "请选择要压缩的图片类型",
|
||
options: [
|
||
{ value: "png", label: "PNG (.png)(无损格式,适合图标和透明图)" },
|
||
{ value: "jpg", label: "JPG (.jpg)(有损格式,适合照片和复杂图像)" },
|
||
{ value: "jpeg", label: "JPEG (.jpeg)(同JPG,仅扩展名不同)" },
|
||
{ value: "webp", label: "WebP (.webp)(新一代格式,体积更小)" },
|
||
{ value: "tga", label: "TGA (.tga)(游戏纹理常用格式)" }
|
||
],
|
||
default: ["png", "jpg"]
|
||
},
|
||
{
|
||
name: "压缩程度",
|
||
type: "select",
|
||
message: "请选择压缩级别",
|
||
options: [
|
||
{ value: "none", label: "无压缩(原始质量)", hint: "保持原始文件大小,图片和内容无损" },
|
||
{ value: "standard", label: "标准压缩(推荐)", hint: "平衡文件大小与质量,压缩率约40%" },
|
||
{ value: "high", label: "高度压缩(最小体积)", hint: "最大程度减小文件体积,可能轻微影响清晰度" },
|
||
{ value: "extreme", label: "极限压缩(极致压缩)", hint: "牺牲部分质量换取最小体积,适合网络传输" }
|
||
],
|
||
default: "standard"
|
||
},
|
||
{
|
||
name: "编码格式",
|
||
type: "select",
|
||
message: "请选择编码格式",
|
||
options: [
|
||
{ value: "uastc", label: "UASTC(通用超压缩纹理)", hint: "高质量GPU纹理,解码快,适合实时渲染" },
|
||
{ value: "etc1s", label: "ETC1S(基础压缩纹理)", hint: "文件体积最小,兼容性好,适合移动端" },
|
||
{ value: "astc", label: "ASTC(自适应纹理压缩)", hint: "灵活块大小,质量与体积可调,适合高端设备" }
|
||
],
|
||
default: "uastc"
|
||
},
|
||
{
|
||
name: "Mipmap",
|
||
type: "select",
|
||
message: "请选择Mipmap生成方式",
|
||
options: [
|
||
{ value: "auto", label: "自动生成(推荐)", hint: "根据图片尺寸自动生成多级纹理,优化远距离渲染" },
|
||
{ value: "none", label: "不生成Mipmap", hint: "仅保留原始尺寸,文件更小但可能出现锯齿" },
|
||
{ value: "custom", label: "自定义层级", hint: "手动指定Mipmap层数,精细控制纹理细节" }
|
||
],
|
||
default: "auto"
|
||
},
|
||
{
|
||
name: "输出选项",
|
||
type: "multiselect",
|
||
message: "请选择输出选项",
|
||
options: [
|
||
{ value: "overwrite", label: "覆盖已存在文件(自动替换同名文件)" },
|
||
{ value: "keepOriginal", label: "保留原文件(压缩后不删除源文件)" },
|
||
{ value: "report", label: "生成压缩报告(输出详细的压缩统计信息)" },
|
||
{ value: "silent", label: "静默模式(减少控制台输出信息)" }
|
||
],
|
||
default: ["overwrite", "keepOriginal"]
|
||
}
|
||
];
|