delimitadores com tamanho exato

delimitadores com tamanho exato

Estou procurando um delimitador com um tamanho exato e especificado pelo usuário (ponto), em vez do padrão "um tamanho discreto grande o suficiente para conter o conteúdo" de \left(etc.

Isso é possível? Eu tentei brincar com as definições de \big*,

\newlength{\vbraceheight}
\setlength{\vbraceheight}{50pt}
\def\vbig#1{{\hbox{$\left#1\vbox to\vbraceheight{}\right.\n@space$}}}
\def\vbigl{\mathopen\vbig}
\def\vbigr{\mathclose\vbig}

mas eles ainda apresentam saltos, pois variam \vbraceheightcontinuamente (e não tenho certeza do porquê).

Responder1

Eu capturaria o conteúdo \vbige redimensionaria verticalmente (mantendo a proporção) para \vbraceheight:

insira a descrição da imagem aqui

\documentclass{article}
\usepackage{graphicx}% http://ctan.org/pkg/graphicx
\makeatletter
\newlength{\vbraceheight}
\setlength{\vbraceheight}{50pt}
\def\vbig#1{{\resizebox{!}{\vbraceheight}{$\left#1\vbox to\vbraceheight{}\right.\n@space$}}}
\def\vbigl{\mathopen\vbig}
\def\vbigr{\mathclose\vbig}
\makeatother
\begin{document}
\[
  \setbox0=\hbox{$\displaystyle\vbigl\{\frac{1}{2}\vbigr\}$}\usebox0\ \mbox{has height \the\ht0}
\]
\end{document}

Responder2

[Resposta escrita por OP, movida da pergunta]

Obrigado pelos comentários e resposta. Acho que entendi por que isso é uma coisa difícil de fazer. Postei uma pergunta semelhante em comp.text.tex e recebi a seguinte "construção manual" de Dan Luecking, achei que valeria a pena compartilhar (fiz algumas pequenas modificações no espaçamento e incluí o código apenas para a chave esquerda):

\DeclareMathSymbol{\bracetr}{\mathord}{largesymbols}{"38}
\DeclareMathSymbol{\bracetl}{\mathord}{largesymbols}{"39}
\DeclareMathSymbol{\bracebr}{\mathord}{largesymbols}{"3A}
\DeclareMathSymbol{\bracebl}{\mathord}{largesymbols}{"3B}
\makeatletter
\def\leftbracefill{%
  \setbox\z@\hbox{$\m@th\bracetr$}%
  \@tempdima=.5\wd\z@
  \advance\@tempdima-.6\p@
  \offinterlineskip
  \hbox{\kern-\@tempdima$\m@th\bracetr$}
  \leaders\hrule \@width 1.18\p@ \vfill
  \hbox{\kern-\@tempdima$\m@th\bracebl$}
  \kern-.5\p@
  \hbox{\kern-\@tempdima$\m@th\bracetl$}
  \leaders\hrule \@width 1.18\p@ \vfill
  \hbox{\kern-\@tempdima$\m@th\bracebr$}
}
\newcommand\leftbrace[1]{%
  \setbox\z@\hbox{$\m@th\bracetl$}%
  \@tempdima=.5\wd\z@
  \advance\@tempdima-.6\p@
  \vcenter{\m@th\everycr{}\tabskip\z@skip
    \hbox{\valign{##\crcr\noalign{\kern\@tempdima}
       \leftbracefill\crcr
       \hbox{$\m@th\displaystyle{#1}$}\crcr
    }}%
  }%
} 

Isto tem a vantagem de não depender do graphicx e não ter as descontinuidades (reconhecidamente pequenas) na espessura do contraventamento que resultam do \scalebox da solução de Werner. No entanto, o acima é muito menos flexível, pois usa apenas um tamanho específico de "peça de suporte" (portanto, só funciona realmente se o conteúdo for maior que 50pt), depende completamente das fontes modernas do computador e possui artefatos nos visualizadores de PDF .

informação relacionada