diff --git a/rag/app/presentation.py b/rag/app/presentation.py index 45f72adf5..03e89b075 100644 --- a/rag/app/presentation.py +++ b/rag/app/presentation.py @@ -40,11 +40,11 @@ class Ppt(PptParser): with slides.Presentation(BytesIO(fnm)) as presentation: for i, slide in enumerate(presentation.slides[from_page: to_page]): try: - buffered = BytesIO() - slide.get_thumbnail( - 0.5, 0.5).save( - buffered, drawing.imaging.ImageFormat.jpeg) - imgs.append(Image.open(buffered)) + with BytesIO() as buffered: + slide.get_thumbnail( + 0.5, 0.5).save( + buffered, drawing.imaging.ImageFormat.jpeg, quality=80) + imgs.append(Image.open(buffered)) except RuntimeError as e: raise RuntimeError(f'ppt parse error at page {i+1}, original error: {str(e)}') from e assert len(imgs) == len(