DocxJS生成docx文档时如何设置Mirrored对称页边距?
解决方案
要在docxjs中实现*Mirrored(对称页边距)*效果,按照以下方式配置即可:
- 核心配置逻辑修正
需要在Section的页边距配置中显式指定type为mirror,同时使用inside、outside字段替换原有的left、right字段。docxjs默认页边距类型为普通模式,只会读取左右边距参数,不会识别内外侧参数,这也是你导出后内侧/外侧数值缺失的原因。 - 完整可运行配置示例
import { Document, SectionType, PageOrientation } from 'docx'; // 页边距单位为缇(TWIP),换算规则:1英寸=1440缇,1厘米≈567缇 const doc = new Document({ sections: [ { properties: { type: SectionType.NEXT_PAGE, page: { margin: { type: "mirror", // 必须配置,指定为对称页边距模式 top: 1440, // 上边距1英寸 bottom: 1440, // 下边距1英寸 inside: 1701, // 内侧边距3厘米 outside: 1134, // 外侧边距2厘米 gutter: 0 // 装订线预留位,不需要可设为0 }, orientation: PageOrientation.PORTRAIT, }, }, children: [ // 此处填写你的文档内容生成逻辑 ] } ] });
- 效果验证
导出docx文件后打开,进入Word的「布局」-「页边距」-「自定义页边距」设置页,即可看到「多页」选项已自动选中「对称页边距」,内侧、外侧数值与配置一致。
内容的提问来源于stack exchange,提问作者LuckyLuke
相关产品推荐
相关产品推荐

