如何在Excelize中实现输入换行符时自动换行至新行?
解决Excel单元格识别
\n实现换行的问题 你当前的样式配置已经开启了自动换行(wrap_text: true),要让单元格识别\n实现换行,还需要注意以下几点:
确保写入的文本包含真实换行符
要确认你写入单元格的字符串里是实际的\n换行符,而非转义后的\\n。比如在Go中可以用反引号包裹字符串,或者直接使用带\n的双引号字符串:// 正确示例:带真实换行符的文本 f.SetCellValue("PI", "A48", "付款条款1\n付款条款2\n付款条款3")验证样式的应用顺序
部分Excel操作库要求样式设置需在单元格赋值之后生效,确保你的SetCellStyle调用在SetCellValue之后执行,同时确认工作表名、单元格坐标完全正确。可选:调整行高适配换行内容
如果换行后的内容被行高截断,可以手动设置行高让内容完整显示:// 设置第48行的高度为40(单位:磅) f.SetRowHeight("PI", 48, 40)
完整的修正示例代码:
paymentTermStyle, _ := f.NewStyle(`{ "alignment":{ "wrap_text":true }, "font": { "family": "Times New Roman" } }`) // 先写入带换行符的文本 f.SetCellValue("PI", "A48", "第一行内容\n第二行内容\n第三行内容") // 再应用自动换行样式 f.SetCellStyle("PI", "A48", "A48", paymentTermStyle) // 调整行高适配多行内容 f.SetRowHeight("PI", 48, 40)
内容的提问来源于stack exchange,提问作者劉世斌
相关产品推荐
相关产品推荐

