From 4391ad6de54fef1c5401849c194483e859501362 Mon Sep 17 00:00:00 2001 From: lifegpc Date: Sat, 13 Sep 2025 19:42:19 +0800 Subject: [PATCH] Fix white border when decode bgi cbg v2 image --- src/scripts/bgi/image/cbg.rs | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/scripts/bgi/image/cbg.rs b/src/scripts/bgi/image/cbg.rs index 70b9252..766e6c3 100644 --- a/src/scripts/bgi/image/cbg.rs +++ b/src/scripts/bgi/image/cbg.rs @@ -409,13 +409,25 @@ impl<'a> CbgDecoder<'a> { ImageColorType::Bgr }; - Ok(ImageData { + let img = ImageData { width: decoder.width as u32, height: decoder.height as u32, color_type, depth: 8, data: output, - }) + }; + + if decoder.width != self.info.width as i32 || decoder.height != self.info.height as i32 { + return Ok(draw_on_canvas( + img, + self.info.width as u32, + self.info.height as u32, + 0, + 0, + )?); + } + + Ok(img) } fn read_encoded(&mut self) -> Result> {