帶有雙垂直線的高斯括號

帶有雙垂直線的高斯括號

我想要具有雙垂直線的左高斯括號和右高斯括號的命令,但其他方面的行為與\lfloor和完全相同\rfloor。特別是,它們應該有不同的尺寸,而其他東西應該保持不變。

不幸的是,我找到了兩個候選者,它們都不是最佳的:

  • \llfloor\rrfloor在包包中 stmaryrd。不幸的是,他們不理解前面的內容\left\right命令。我的印像是它們是固定尺寸的。

  • \lFloor\rFloor在包包中nath。它們有不同的大小,但問題是包含該套件nath會引入所有括號類型符號的自動調整大小行為。這可能很有趣,但目前這種變化對我來說太激進了。

答案1

如果您不想使用任何包,則amsmath可以選擇將兩個\lfloors 彼此相鄰放置,並在它們之間留出一點負空間:

在此輸入影像描述

這樣做的優點是不會加粗分隔符號的水平部分。

\documentclass{article}
\usepackage{amsmath}

\newcommand{\gaussbr}[1]{%
    \left\lfloor\hspace{-.33em}\left\lfloor #1\right\rfloor\hspace{-.33em}\right\rfloor%
    }

\begin{document}

\[
\gaussbr{A}\gaussbr{\sum_{n=0}^{\infty}a_n}
\]

\end{document}

當然,您可以根據自己的喜好調整負空間的大小。

答案2

感謝 Werner 提供解決方案這個類似的問題

使用一個相當快速的修復scalerel將是以下內容。

方便的是,scalerel提供\scaleleftright[<max width>]{<left obj>}{<stuff>}{<right obj>}(和類似的\stretchleftright)縮放/拉伸<left obj><right obj>的高度<stuff>(如果需要和可選,則限制為 的寬度<max width>)。這是一個簡單的例子:

\documentclass{article}
\usepackage{scalerel, stmaryrd} % http://ctan.org/pkg/scalerel

\newcommand{\gaussbracket}[1]{\stretchleftright{\llfloor}{#1}{\rrfloor}}

\begin{document}
\[ \gaussbracket{\displaystyle\sum_{i=1}^n i} \]
\end{document}

相關內容