You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Typst中为向量添加侧边括号?

在Typst中为向量添加侧边括号的实现方法

完全可以在Typst中实现向量的侧边括号(包括多层侧边括号),下面是具体的实现方案:

1. 基础单侧边括号向量

如果只需要给整个向量添加单侧括号,直接用stack元素搭配brace即可:

#stack(
  direction: "down",
  brace(left: true), // 换成right: true可生成右侧括号
  $x_1$,
  $x_2$,
  $x_3$,
  $x_4$,
)

这段代码会生成一个左侧带大括号的垂直向量。

2. 多层侧边括号(分组标注)

如果需要像参考图那样给向量的不同元素组添加独立侧边括号,可以用overlay叠加多个stack来实现,通过位置调整让括号对应到指定元素组:

#overlay(
  // 外层大括号,覆盖所有元素
  stack(
    direction: "down",
    brace(left: true, stroke: 1.2pt),
    $x_1$,
    $x_2$,
    $x_3$,
    $x_4$,
  ),
  // 内层括号1,覆盖前2个元素
  align(center + top, shift(y: 0.6em, x: -0.9em),
    stack(
      direction: "down",
      brace(left: true, stroke: 0.9pt),
      $x_1$,
      $x_2$,
    )
  ),
  // 内层括号2,覆盖后2个元素
  align(center + bottom, shift(y: -0.6em, x: -0.9em),
    stack(
      direction: "down",
      brace(left: true, stroke: 0.9pt),
      $x_3$,
      $x_4$,
    )
  ),
)

代码说明:

  • stack负责垂直排列元素和对应的括号,brace的left/right参数控制括号方向,stroke调整括号粗细;
  • overlay用来叠加多个带括号的元素组,实现多层括号效果;
  • shift参数用来调整内层括号的位置,确保括号刚好覆盖目标元素组;
  • 如果需要右侧多层括号,只需把所有brace(left: true)替换为brace(right: true),并调整shift(x: ...)的数值(比如改成x: 0.9em)。

补充:LaTeX中的实现思路(翻译自相关文章)

在LaTeX中实现同类效果,通常依赖amsmath宏包,核心方法包括:

  • 使用array环境配合\left\{和\right.生成对应高度的括号;
  • 借助\raisebox和\phantom调整括号的垂直位置,实现分组覆盖;
  • 嵌套cases环境或自定义array结构,完成多层括号的组合。

内容的提问来源于stack exchange,提问作者Maturin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 05:51:23