Typst中跨页延续带编号数学容器的实现方法
解决Typst长编号公式跨页且不拆分编号的方法
启用公式环境的可断页属性
Typst的equation环境默认不允许跨页,给它加上breakable: true参数就能让长公式自动分页,同时保留唯一编号:#equation(breakable: true)[ // 你的长公式内容,比如: \sum_{i=1}^{1000} x_i + \prod_{j=1}^{1000} y_j + \int_{0}^{\infty} z(t) dt + \sum_{k=1}^{1000} w_k + \prod_{l=1}^{1000} v_l + \int_{-\infty}^{0} u(s) ds // 更多公式内容... ]这种方式不需要手动干预分页,Typst会自动根据页面剩余空间处理跨页,编号始终绑定整个公式。
手动拆分公式并共享编号
如果需要精准控制分页位置,可以把公式拆成两部分,用number参数指定同一个编号,还能加supplement标记续篇:#equation(number: "3")[ // 公式前半部分,放在当前页 \sum_{i=1}^{500} x_i + \prod_{j=1}^{500} y_j + \int_{0}^{50} z(t) dt ] #pagebreak() #equation(number: "3", supplement: "续")[ // 公式后半部分,放在下一页 + \sum_{k=501}^{1000} w_k + \prod_{l=501}^{1000} v_l + \int_{50}^{\infty} u(s) ds ]这种方法适合需要强制在某个位置分页的场景,编号完全一致,
supplement是可选的,用来明确这是公式的延续部分。用
multline环境处理多行跨页公式
如果你是多行公式,multline环境天生支持换行,开启breakable: true就能跨页,编号只显示一次:#multline(breakable: true)[ \sum_{i=1}^{1000} x_i + \prod_{j=1}^{1000} y_j \\ + \int_{0}^{\infty} z(t) dt + \sum_{k=1}^{1000} w_k \\ + \prod_{l=1}^{1000} v_l + \int_{-\infty}^{0} u(s) ds // 更多行内容... ]multline会自动处理换行和分页逻辑,适合结构清晰的多行长公式。
内容的提问来源于stack exchange,提问作者cakeforcat
相关产品推荐
相关产品推荐

