From 8ae7def939c186bc176ba6e6055483e6b40bb706 Mon Sep 17 00:00:00 2001 From: hmo Date: Mon, 27 Apr 2026 21:19:35 +0800 Subject: [PATCH] fix: remove trailing spacers before PDF build to avoid blank last page --- app/services/pdf_generator.py | 6 +++++- config/api_config.json | 3 ++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/app/services/pdf_generator.py b/app/services/pdf_generator.py index d203e86..a966861 100644 --- a/app/services/pdf_generator.py +++ b/app/services/pdf_generator.py @@ -278,7 +278,7 @@ def generate_pdf(plan_id, student_name, content, output_dir, rendered_report=Non return c.saveState() try: - c.setFont("Chinese", 14) + c.setFont("Chinese", 56) # 浅灰色半透明 c.setFillColor(colors.Color(0.6, 0.6, 0.6, alpha=0.25)) # 旋转45度 @@ -290,5 +290,9 @@ def generate_pdf(plan_id, student_name, content, output_dir, rendered_report=Non pass c.restoreState() + # 移除末尾的空白元素(避免产生多余空白页) + while pdf.elements and isinstance(pdf.elements[-1], Spacer): + pdf.elements.pop() + doc.build(pdf.elements, onFirstPage=draw_watermark, onLaterPages=draw_watermark) return output_path \ No newline at end of file diff --git a/config/api_config.json b/config/api_config.json index 86de97d..8d54bc6 100644 --- a/config/api_config.json +++ b/config/api_config.json @@ -8,5 +8,6 @@ "model": "MiniMax-M2.7-highspeed", "temperature": 0.1, "prompt_template": "", - "api_key": "sk-cp-Mj6FHASGAcdc1IhpetY7z4lXCgbkoGAkMbViODPHiVdC-NerbqKRW8ZTCuFliDA9JukoB56ILEYUhDKH2QUJq-xt1ZYNStQ-HNgjRvXIq0H4gOgoxy26xuA" + "api_key": "sk-cp-Mj6FHASGAcdc1IhpetY7z4lXCgbkoGAkMbViODPHiVdC-NerbqKRW8ZTCuFliDA9JukoB56ILEYUhDKH2QUJq-xt1ZYNStQ-HNgjRvXIq0H4gOgoxy26xuA", + "watermark_text": "有音教育·艺超音乐培训" } \ No newline at end of file