기본 tabular
환경을 고려하십시오. 두 개의 열이 있는데, 첫 번째 열에 tikzpicture
는 불확실한 크기의 가 포함되어야 하고, 두 번째 열에는 확정된(및 사용자 지정) 너비에 대한 설명이 포함되어야 합니다. 첫 번째 열의 내용이 잘 제한되어 있으면 다음과 같이 할 수 있습니다.
\begin{tabular}{m{2cm}p{6cm}}
그러나 첫 번째 열의 내용은 잘 제한되어 있지 않으므로 다음과 같은 결과를 얻을 수 있는지 궁금합니다.
\begin{tabular}{mp{6cm}}
또는
\begin{tabular}{m{}p{6cm}}
가운데 정렬된 첫 번째 열이지만 너비 인수가 없습니다. 명확성이 필요한 경우 mwe를 게시하겠습니다.
답변1
첫 번째 열의 원하는 가로 정렬에 따라 첫 번째 열에 대해 l
(왼쪽 정렬), c
(가로 가운데 정렬) 또는 r
(오른쪽 정렬)을 선택할 수 있습니다. 이는 포함된 tikzpicture의 너비에 자동으로 맞춰집니다. tikzpicture와 관련하여 두 번째 열의 텍스트를 세로 중앙에 배치하려면 m{6cm}
두 번째 열을 사용하고 baseline=(current bounding box.center)
각 tikzpicture에 옵션으로 추가하십시오.
tabularx
이 설정으로 인해 텍스트 너비보다 더 넓은 표가 생성될 수 있으므로 시도해 볼 수도 있습니다 . tabularx
다음 MWE에도 예제가 포함되어 있습니다 . \hline
눈의 기준으로 사용하고 있으므로주의하시기 바랍니다 . 실제 테이블에서는 \hline
패키지의 줄만 사용 booktabs
하거나 수평선을 전혀 사용하지 않습니다.
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{positioning}
\usepackage{array}
\usepackage{tabularx}
\renewcommand\tabularxcolumn[1]{m{#1}}
\begin{document}
\begin{tabular}{cm{6cm}}
\hline
\begin{tikzpicture}[baseline=(current bounding box.center)]
\node[draw=black] (text1) {some text here};
\node[draw=black] (text2) [below left =of text1] {some other text here}edge [->] node {}(text1) ;
\end{tikzpicture}
& some explanatory text that is vertically centered with respect to the tikz picture\\
\hline
\begin{tikzpicture}[baseline=(current bounding box.center)]
\node[draw=black] (text1) {A};
\node[draw=black] (text2) [below left =of text1] {B}edge [->] node {}(text1) ;
\end{tikzpicture}
& some explanatory text that is vertically centered with respect to the tikz picture\\
\hline
\end{tabular}
\bigskip
\begin{tabularx}{\textwidth}{cX}
\hline
\begin{tikzpicture}[baseline=(current bounding box.center)]
\node[draw=black] (text1) {some text here};
\node[draw=black] (text2) [below left =of text1] {some other text here}edge [->] node {}(text1) ;
\end{tikzpicture}
& some explanatory text that is vertically centered with respect to the tikz picture\\
\hline
\begin{tikzpicture}[baseline=(current bounding box.center)]
\node[draw=black] (text1) {A};
\node[draw=black] (text2) [below left =of text1] {B}edge [->] node {}(text1) ;
\end{tikzpicture}
& some explanatory text that is vertically centered with respect to the tikz picture\\
\hline
\end{tabularx}
\end{document}