fpdf2的write方法输出时\n显示为字符而非换行,如何修复?
解决fpdf2打印文本时\n不换行反而显示字符的问题
排查文本内容本身的问题:
确认dict_text_for_pdf[category]中的文本是否包含实际的换行符,而非字符串形式的"\n"(比如文本被存成了"第一行\\n第二行",这种情况下\n会被当作普通字符显示)。如果是这种情况,先做替换:text = self.dict_text_for_pdf[category].replace("\\n", "\n") self.pdf.write(_c.text_line_height, text)换用专门处理多行的
multi_cell方法:
如果文本本身已经是正确的换行符,但write方法不生效,试试multi_cell,它对多行文本的支持更稳定:text = self.dict_text_for_pdf[category] # 0表示单元格宽度自动适配页面,第二个参数是行高 self.pdf.multi_cell(0, _c.text_line_height, text)升级fpdf2版本:
旧版本可能存在换行处理的bug,执行以下命令升级到最新版:pip install --upgrade fpdf2
内容的提问来源于stack exchange,提问作者arame3333
相关产品推荐
相关产品推荐

