
아래의 MWE는 원하는 결과를 산출합니다. 그러나 다음 대신 이 정렬을 얻는 더 좋은 방법이 있습니까 raise=-0.3ex
?
이 없으면 raise=-0.3ex
항목 번호가 텍스트와 정렬되지 않습니다.
암호:
\documentclass{article}
\usepackage{enumitem}
\usepackage[export]{adjustbox}
\fboxsep=0pt
\newadjustboxenv{MyAdjustbox}{valign=t, raise=-0.3ex}%
\begin{document}
\begin{enumerate}
\item
\begin{MyAdjustbox}
\fbox{%
\begin{minipage}[t]{\linewidth}
Some text that takes up several lines, so we need to adjust the
item number to align with the top baseline.
\end{minipage}%
}%
\end{MyAdjustbox}%
\end{enumerate}%
\end{document}
답변1
나는 두 가지 별개의 문제가 있다고 생각합니다. 주요한 것은 환경의 사용에서 발생합니다 minipage
.
fbox 내부 자료의 첫 번째 행에는 대문자보다 큰 자료가 없습니다. 해당 자료가 에 포함되어 있으므로 및와
minipage
같은 기호에 사용되지 않은 수직 공백이 필요합니다.(
)
제거됩니다. 대조적으로, 열거 기호는 다음과 같습니다.~ 아니다에 포함되어minipage
있으므로 암시적 을 제거하지 않고 기준선이 선택됩니다\strut
.\strut
의 첫 번째 줄에 a를 삽입하면\fbox
수직 조정의 필요성이 대부분 제거됩니다."1."의 기준선을 완전히 정렬하려면 앞의 입자
\fbox
와 내부의 재질 , fbox를 둘러싸는 규칙의 두께(매개변수로 제공 , 기본값: , 일반적으로 )minipage
에 대한 조정(말장난 의도)도 수행해야 합니다 . 그리고 일반적으로 값은 0이 아니므로 다음 코드를 사용하는 것이 좋습니다.\fboxrule
\arrayrulewidth
0.4pt
\fboxsep
\newadjustboxenv{MyAdjustbox}{valign=t, raise=\fboxrule+\fboxsep}
대신에
\newadjustboxenv{MyAdjustbox}{valign=t, raise=-0.3ex}
이 두 가지 조정을 통해(또 다른 말장난 -- 아야!) 다음 스크린샷을 얻었습니다.
\documentclass{article}
\usepackage{enumitem}
\usepackage[export]{adjustbox}
\fboxsep=0pt
\newadjustboxenv{MyAdjustbox}{valign=t, raise=\fboxrule+\fboxsep}
\begin{document}
\begin{enumerate}
\item
\begin{MyAdjustbox}
\fbox{%
\begin{minipage}{\linewidth}\strut%
Some text that takes up several lines, so we need
to adjust the item number to align with the top
baseline.
\end{minipage}%
}%
\end{MyAdjustbox}%
\end{enumerate}%
\end{document}
답변2
옵션 valign=t
은 미니페이지 또는 테이블 형식 옵션 adjustbox
처럼 내부 상단 기준선을 검색하지 않습니다 .[t]
adjustbox
계산하다 현재 텍스트 글꼴 크기를 고려한 높이: 기본적으로 valign=t
높이를 현재 의 높이로 설정합니다 \strutbox
.
이는 첫 번째 줄의 텍스트에 따라 숫자에 비해 너무 높거나 너무 낮을 수 있음을 의미합니다. Mico의 코드를 사용하여 첫 번째 사례를 "수리"할 수 있지만 두 번째 경우에는 쉽게 해결할 수 없습니다.
제 생각에는 adjustbox
그러한 상자에는 잘못된 환경이 있습니다. 기본 기준선이 없는 그림을 정렬하는 데 유용하지만 텍스트 상자에는 유용하지 않습니다.
\documentclass{article}
\usepackage{enumitem}
\usepackage[export]{adjustbox}
\newadjustboxenv{MyAdjustbox}{valign=t}
\begin{document}
\begin{enumerate}
\item
\begin{MyAdjustbox}%too high
\begin{minipage}[t]{\linewidth}
aaaa
\end{minipage}%
\end{MyAdjustbox}
\item \begin{MyAdjustbox}%too low
\begin{minipage}[t]{\linewidth}
$\int\limits_1^3 f(x) $
\end{minipage}%
\end{MyAdjustbox}
\end{enumerate}
\end{document}