Wire resize algorithm selection, overwrite behavior, and fix rotation/flip scope

- Add ResizeAlgorithm enum (Lanczos3/CatmullRom/Bilinear/Nearest) to core
- Thread algorithm selection from UI ComboRow through ProcessingJob to resize_image
- Add OverwriteBehavior enum (AutoRename/Overwrite/Skip) to core
- Implement overwrite handling in executor with auto-rename suffix logic
- Wire overwrite behavior from output step through to processing job
- Fix rotation/flip to apply when resize step is enabled, not just adjustments
This commit is contained in:
2026-03-06 15:17:59 +02:00
parent 064194df3d
commit a29256921e
7 changed files with 123 additions and 6 deletions

View File

@@ -31,6 +31,7 @@ impl Preset {
output_dir: output_dir.into(),
sources: Vec::new(),
resize: self.resize.clone(),
resize_algorithm: crate::operations::ResizeAlgorithm::default(),
rotation: self.rotation,
flip: self.flip,
adjustments: None,
@@ -39,6 +40,7 @@ impl Preset {
metadata: self.metadata.clone(),
watermark: self.watermark.clone(),
rename: self.rename.clone(),
overwrite_behavior: crate::operations::OverwriteBehavior::default(),
preserve_directory_structure: false,
progressive_jpeg: false,
avif_speed: 6,