내 전체 코드가 컴파일되었으며 일부 페이지는 아래에 있습니다.
홀수 페이지 짝수 페이지
내 문제는 longtable이 짝수 페이지에서 왼쪽으로 시작되지 않는다는 것입니다. 내가 원하는 것을 marginparwidth
및 에 추가합니다 marginparsep
.
여기에 내가 원하는 짝수 페이지가 있습니다.
여기서는 MWE
\documentclass[a4paper,twoside,openright,12pt]{book}
\usepackage[left=1.5cm,right=1cm,top=3cm,bottom=1.5cm,marginparwidth=5.5cm,marginparsep=1cm,outer=8cm]{geometry}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage{longtable}
\usepackage{showframe}
\usepackage{lipsum}
\begin{document}
\lipsum[1-3]
\begin{longtable}[l]{|p{7cm}|p{7cm}|}
\hline
The power delivered at each instant, of course, varies with the
magnitude of the sinusoidal ac current & The power delivered at each instant, of course, varies with the magnitude of the sinusoidal ac current\\
\hline
\end{longtable}
\end{document}
나는 이렇게 생각하고 있다...
\checkoddpage
\ifoddpage
START -(\marginparsep+\marginparwidth)
\else
NOTHING DO
\fi
어떻게 해야 하나요?
답변1
\begin{center}
around는 longtable
정렬에 영향을 주지 않으며 단지 허위 수직 공간을 추가할 뿐입니다.
longtable
기본적으로 중앙에 있지만 왼쪽 정렬을 원하면 사용할 수 있습니다
\begin{longtable}[l]
하지만 너무 넓어서 전혀 정렬할 수 없습니다.
Overfull \hbox (95.13185pt too wide) in alignment at lines 16--21
7cm 기둥 2개를 놓을 공간이 없습니다.
{|p{7cm}|p{7cm}|}
5cm로 만들어줘
답변2
짝수 페이지에서 왼쪽으로 시작
패키지는 showframe
매우 훌륭하게 시각화되는데, 테이블이 짝수 페이지에서 들여쓰기로 시작하는 이유는 무엇입니까? 볼 수 있듯이 헤드 라인도 이동되고 왼쪽 공간은 너비가 .인 상당히 큰 "marginpar" 열이 차지합니다 5.5cm
. 따라서 package 의 옵션 값을 수정해야 할 수도 있습니다 geometry
.
테이블이 너무 넓다
테이블이 너무 넓기 때문에 Davids의답변, 열 너비를 줄여야 합니다. 열이 tabularx
포함된 패키지는 X
한 페이지에 맞는 테이블에 사용할 수 있습니다. 여기에서 사용할 수 있는 longtable
with 의 합집합을 다루는 일부 패키지도 있습니다 .tabularx
아래 예에서는 최대 너비를 계산합니다. 테이블 헤드 사양은 충분히 쉽습니다.
각 열은 공간의 왼쪽과 오른쪽에 있습니다 \tabcolsep
(테이블 사양에서 덮어쓰지 않는 한). 패키지 array
가 로드되면 규칙도 공간에 기여합니다. 주의하세요. 패키지는 array
종종 다른 패키지에 의해 로드됩니다. 따라서 이 예에서는 서문 끝 부분에서 패키지에 대한 테스트를 구현합니다.
계산은 다양한 방법으로 수행될 수 있습니다. 예를 들면 package calc
, e-TeX's \dimexpr
, package 입니다 pgfmath
. 이 예제는 기본 LaTeX 명령 \setlength
과 \addtolength
.
\documentclass[a4paper,twoside,openright,12pt]{book}
\usepackage[
left=1.5cm,
right=1cm,
top=3cm,
bottom=1.5cm,
marginparwidth=5.5cm,
marginparsep=1cm,
outer=8cm
]{geometry}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage{array}
\usepackage{longtable}
\usepackage{showframe}
\usepackage{lipsum}
\newdimen\TabColWidth
\makeatletter
\newif\ifPackageArray
\AtBeginDocument{\@ifpackageloaded{array}{\PackageArraytrue}{}}
\makeatother
\begin{document}
\lipsum[1-3]
\setlength{\TabColWidth}{\linewidth}
\addtolength{\TabColWidth}{-4\tabcolsep}
\ifPackageArray
\addtolength{\TabColWidth}{-3\arrayrulewidth}
\fi
\setlength{\TabColWidth}{.5\TabColWidth}
\begin{longtable}[l]{|p{\TabColWidth}|p{\TabColWidth}|}
\hline
The power delivered at each instant, of course, varies with the
magnitude of the sinusoidal ac current & The power delivered at each
instant, of course, varies with the magnitude of the sinusoidal ac current\\
\hline
\end{longtable}
\end{document}