# Task Breakdown / 任务拆分

## Overview / 概述

| Status      | Count |
| ----------- | ----- |
| Total       | 5     |
| Done        | 5     |
| In Progress | 0     |
| Pending     | 0     |

## Tasks / 任务列表

### High Priority / 高优先级

- [x] T1: 实现 JPEG 压缩编码器
  - 使用 JpegEncoder 进行有损压缩
  - 支持 quality 参数 (0-100)
  - 转换为 RGB8 格式输出

- [x] T2: 实现 PNG 压缩编码器
  - 使用 PngEncoder 进行压缩
  - 支持三种压缩级别:
    - fast: CompressionType::Fast + FilterType::NoFilter
    - default: CompressionType::Default + FilterType::Sub
    - best: CompressionType::Best + FilterType::Paeth
  - 转换为 RGBA8 格式输出

### Medium Priority / 中优先级

- [x] T3: 实现输入格式检测
  - 自动检测 PNG/JPEG/WebP/GIF/TIFF 格式
  - 根据输入格式选择默认输出格式

- [x] T4: 实现输出路径生成
  - 默认使用 `{原文件名}.compress.{扩展名}`
  - 支持 --out-name 自定义文件名
  - 支持 --out-dir 自定义输出目录

### Low Priority / 低优先级

- [x] T5: 集成到 CLI 命令系统
  - 添加 CompressArgs 结构 (input, format, out_name, out_dir, quality, png_level)
  - 添加 PngLevel 枚举 (Fast, Default, Best)
  - 注册到 ImageCommands 枚举
  - 实现 handle_image_command 分支
