이 정리와 유사한 환경의 왼쪽에 물음표를 수직으로 중앙에 배치하려면 어떻게 해야 합니까?

이 정리와 유사한 환경의 왼쪽에 물음표를 수직으로 중앙에 배치하려면 어떻게 해야 합니까?

물음표가 수직 중앙에 표시되도록(간격은 텍스트 길이에 따라 다름) 다음 환경을 수정하려면 어떻게 해야 합니까?

여기에 이미지 설명을 입력하세요

해당 질문 상자를 생성하는 코드는 다음과 같습니다.

\documentclass[]{article} 
\usepackage{tikz}
\usepackage{environ}

\newtheorem{question}{Question}

\NewEnviron{myq}
{
    \noindent\fcolorbox{black}{gray!10}{
        \tikz\node[
        font=\fontfamily{ppl}\fontsize{1cm}{1.2cm}\selectfont]{?};
        \parbox{\textwidth}{
        \vspace*{-2mm}
        \begin{question}
                \BODY
        \end{question}
        }
    }
}

\begin{document}


\begin{myq}
  Here is some question in a gray box, 
  with a question mark to the left of it.     
  The thing is, I'd like the question mark to be 
  centered vertically within the box. How do I 
  do that?
\end{myq}

\end{document}

원래 상자에 텍스트를 어떻게 넣는지, 회색으로 음영을 넣는 방법, 왼쪽에 큰 물음표를 넣는 방법 등이 궁금했는데 (인터넷 검색 끝에) 다 알아냈습니다. 물음표를 수직 중앙에 배치하는 것이 제가 아직 파악하지 못한 마지막 부분입니다.

답변1

이 코드를 사용해 보세요. ?패키지를 사용하여 계산된 기호 너비로 parbox에 기호를 삽입합니다 calc. 두 개의 Parbox를 총 너비가 \linewidth.

비

\documentclass[]{article} 
\usepackage{tikz}
\usepackage{environ}

\usepackage{showframe}% only to show the margins

\usepackage{calc}% added <<<<<<<<<<<
\newlength{\signwidth}  % added <<<<<<<<<<<
\setlength{\signwidth}{\widthof{\fontfamily{ppl}\fontsize{1cm}{1.2cm}\selectfont ?\ }}

\newtheorem{question}{Question}

\NewEnviron{myq}
{\noindent\fcolorbox{black}{gray!10}{%
        \parbox{\signwidth}{% added <<<<<<<<<
            \vspace*{-2mm}% OPTIONAL <<<<
            \tikz\node[font=\fontfamily{ppl}\fontsize{1cm}{1.2cm}\selectfont]{?};
        }
        \parbox{\dimexpr\linewidth-\signwidth-\marginparsep-2\fboxrule}{%changed <<<
            \vspace*{-2mm}
            \begin{question}
                \BODY
            \end{question}
        }
    }
}

\begin{document}
    
    
    \begin{myq}
        Here is some question in a gray box, 
        with a question mark to the left of it.     
        The thing is, I'd like the question mark to be 
        centered vertically within the box. How do I 
        do that?
    \end{myq}
    
\end{document}

관련 정보