How to get all the possible sizes of delimiters with Cambria Math

After this question, Cambria Math \bigg command doesn't work as expected, I discovered that Cambria has so many sizes of delimiters. I think the next logical step is to come up with a way of having all the possible sizes without requiring the extensible one.

If I'm not wrong, those are different glyphs… or are they re-scaled ones? I'm looking for an easy way of having all the posible sizes at hand, instead of only four of them (\big, \Big, \bigg, \Bigg).

My idea (which may be is not the correct one) is to find a command with a number as optional (or mandatory) argument, e.g., \ldelim[3]( \rdelim[7]\rbrace. What the number means? I don't know, may be the number of glyph you want to use, or may be the size which should be covered…

And, could it work with every delimiter? Like braces, angles, brackets, etc.

Here is an example of many sizes I found of the parenthesis.

\documentclass{scrartcl}

\usepackage{mathtools}
\usepackage{unicode-math}
\setmathfont{Cambria Math}
\begin{document}

$\left( {\delimitershortfall=-19pt\Biggl( \biggl( \Bigl( \bigl( {\delimitershortfall=-2pt\biggl( \Bigl( \bigl( {\delimitershortfall=5pt\bigl( ( \mu } } }^2 \right)$

\end{document}


PS: In case they (at least some of them) are re-scaled of one glyph, it's such a nice work! It would be great to have a command which re-scales it at wish, without relying on the extensible ones.

The definitions of \big, \bigl, \bigr, \bigm etc., can be modified to produce different sizes. The definition of these three is

\def\big#1{{\hbox{$\left#1\vbox to8.5\p@{}\right.\n@space$}}}
\def\bigl{\mathopen\big}
\def\bigr{\mathclose\big}
\def\bigm{\mathrel\big}


Note that a big delimiter is nothing more than a \left-\right pair which surrounds a strut of a given size (8.5pt in the case of \big). Parameter #1 can be any resizable delimiter. Unfortunately, the sizes are hard-coded and they do not vary with the current size, nor in subscripts. The height increases by 3pt for each step, with \Big using 11.5pt up to 17.5pt for \Bigg. To get more flexibility one might define a similar command with the dimension as a parameter:

\makeatletter
\def\thisbig#1#2{{\hbox{$\left#2\vbox to#1{}\right.\n@space$}}}
\def\thisbigl#1{\mathopen\thisbig{#1}}
\def\thisbigr#1{\mathclose\thisbig{#1}}
\def\thisbigm#1{\mathrel\thisbig{#1}}
\makeatother


Then one could say $\thisbigl{8.5pt}($ to get the effect of $\bigl($ but also $\thisbigl{2ex}($ to get a size that's scaled to the surrounding text. Of course, what size one actually gets depends on what sizes are available in the math fonts in use.

• That works perfect. But the \thisbigm is missing. I will search it, but it could be great to have it in the answer ;) Nov 25 '13 at 11:59
• @Manuel I added \thisbigm. It is identical in form to the rest with \mathrel replacing \mathopen or \mathclose.
– Dan
Nov 25 '13 at 19:01