Quiero tener un comando cup que se adapte al tamaño de un array a su izquierda (Algo así como left
y right
para el paréntesis), manteniendo la misma fuente para las letras y el grosor de la línea. Intenté usarlo bigcup
con el paquete scalerel pero la línea y el subíndice se vuelven demasiado anchos. Reporto aquí un ejemplo mínimo para mostrar cuál es el resultado:
\documentclass{article}
\usepackage{scalerel}
\begin{document}
\[
\scalerel{
\bigcup\limits_{x \in X}
}
{
\left\{
f(x)
\begin{array}{| l}
a \\ % first row
b \\ % second row
c \\ % third row
d \\ % fourth row
e \\ % fifth row
\dots \\ % etc.
z \\ % n-th row
\end{array}
\right\}
}
\]
\end{document}
El tamaño obtenido es el correcto, sin embargo el tamaño de fuente x \in X
se vuelve demasiado grande y la línea demasiado gruesa.
¿Cómo puedo tener un resultado similar sin estas distorsiones?
Respuesta1
Creo que al escalar con el tamaño de la matriz siempre se encontrará con el hecho de que todo el contenido del scalerel
cuadro, incluido el subíndice, se escala, lo que genera tamaños de script inconsistentes (y probablemente también tazas de tamaño ridículo).
En su lugar, sugeriría usar el \scaleobj
comando también proporcionado por el scalerel
paquete, que funciona de manera similar al \scalebox
del graphicx
paquete. Mientras amplías toda la copa más el subíndice, puedes escalar el subíndice solo en la otra dirección. Para que el subíndice quede bien debajo de la copa después del escalado interno, se puede agregar a \raisebox
y :\smash
\documentclass{article}
\usepackage{scalerel}
\newcommand\hugecup{%
\scaleobj{2.5}{%
\bigcup\limits_{\smash{\raisebox{.25\baselineskip}{\(\scaleobj{0.425}{x\in X}\)}}}
}
}
\begin{document}
\[
\hugecup
\left\{
f(x)
\begin{array}{| l}
a \\ % first row
b \\ % second row
c \\ % third row
d \\ % fourth row
e \\ % fifth row
\dots \\ % etc.
z \\ % n-th row
\end{array}
\right\}
\]
\end{document}
Producción:
Los valores utilizados son justo lo que pensé que parecían sensatos para una variedad de matrices diferentes (grandes); es posible que desees modificarlos.