Espaçamento vertical no tcolorbox

Espaçamento vertical no tcolorbox

Forneci um código para uma caixa de texto simples em LaTeX abaixo. Também anexei uma captura de tela da saída, ao lado de uma caixa de texto semelhante compilada no Microsoft Word. Gostaria que a caixa de texto LaTeX fosse formatada da mesma forma que a do MS Word. Em particular, a centralização vertical é o problema. A caixa de texto do MS Word se parece com a do LaTeX somente quando a letra g (ou qualquer outra letra com descendente) é alterada com \smash{}. Se \smash{} NÃO for usado, o descendente adiciona mais espaço vertical abaixo do texto. Alguém poderia fornecer um código LaTeX que esmague automaticamente esses descendentes (ou algo que obtenha um efeito semelhante) para que o texto na caixa LaTeX corresponda à centralização vertical na caixa do MS Word? Eu realmente aprecio isso.

Observe que em algum momento eu gostaria de adicionar equações a essas caixas de texto, provavelmente usando o ambiente de alinhamento. É importante que uma solução completa para este problema não introduza qualquer espaço vertical adicional em torno deste ambiente de alinhamento, como é o caso da resposta proposta existente para esta questão.

\documentclass[12pt]{article}
\usepackage{lipsum} % for generating dummy text
\usepackage{tcolorbox} % for creating colored boxes

\begin{document}

\begin{tcolorbox}[colback=white,colframe=black]
\LARGE  abcdefg
\end{tcolorbox}

\end{document}

insira a descrição da imagem aqui

Responder1

Você poderia usar \strutpara garantir que seu texto tenha sempre a altura máxima e depois reduzir as margens superior e inferior conforme desejar:

\documentclass{article}
\usepackage{tcolorbox} 

\newtcolorbox{test}{
  colback=white,
  colframe=black,
  bottom=-3pt,
  top=0pt,
  fontupper=\LARGE,
  after upper={\strut},
  before upper={\strut}
}

\begin{document}

\begin{test}
ace 
\end{test}

\begin{test}
abcdefg 
\end{test}

\end{document}

insira a descrição da imagem aqui

Se por alguma razão estranha a presença de ascendentes influenciar a altura da caixa, mas a presença de descendentes não influenciar a altura da caixa, então você poderá fazer algo como

\documentclass{article}
\usepackage{tcolorbox} 

\newtcolorbox{test}{
  colback=white,
  colframe=black,
  bottom=0pt,
  top=3pt,
  fontupper=\LARGE,
  after upper={\vphantom{g}},
}

\begin{document}

\begin{test}
ace 
\end{test}

\begin{test}
abcdefg 
\end{test}

\end{document}

informação relacionada