%EA%B3%BC%20%ED%85%8D%EC%8A%A4%ED%8A%B8%EB%A7%8C%20%EC%9E%88%EB%8A%94%20Book%EC%9D%98%20Underfull%5Cvbox(badness%2010000)%20%EA%B2%BD%EA%B3%A0.png)
그래서 저는 상대적으로 간단한 코드의 book
문서를 가지고 있습니다.
컴파일하려고 하면 많은 Underfull \vbox (badness 10000) has occurred while \output is active
경고가 표시됩니다(제공된 MWE에는 경고가 하나만 있지만). 의 구조는 book
간단합니다. 제목과 텍스트만 있으면 됩니다.
예를 들어, 페이지는 부품 번호, 장 번호 및 텍스트로 시작합니다(예, 부품 번호와 장 번호 사이, 장 번호와 명령으로 추가된 텍스트 사이에도 이미지가 있습니다 \includegraphics
). 하지만 해당 이미지를 삭제하더라도 경고는 여전히 더 많은 경고와 함께 나타납니다!
예전에는 텍스트의 밑줄이 프레임 위에 걸려서 문제가 있었는데, 책의 heightrounded
를 추가하니 해결되었습니다. 나는 클래스가 기본적으로 문자 그대로 텍스트를 프레임 아래쪽으로 플러시하는 데 사용한다는 것을 이해합니다 . 그래서 많은 사람들이 제안한 대로 사용하려고 시도했지만 경고 발생을 해결한 동안 또 다른 문제가 발생했습니다. 이제 일부 페이지에서는 최종선의 기준선이 프레임 위에 매달려 있고 때로는 거의 전체 선만큼 높습니다(불행히도 그렇지 않습니다). MWE에서는 눈에 띄지만 여전히 페이지 1에서 볼 수 있습니다! 내 문서가 매우 단순하게 코딩되어 있기 때문에 이러한 경고가 나타나는 원인이 무엇인지 궁금합니다. 나는 그것이 내 제목(부품 번호와 장 번호, 그리고 아마도 이미지도)의 간격과 어떻게든 연결되어 있다는 것을 알아차렸습니다. 모든 및 명령을 제거 하고 텍스트만 남겨두면 경고가 사라지기 때문입니다. 패키지 와 관련이 있나요 ? 내 문서에 사용된 항목을 모두 그대로 두었 으므로 그 중 하나에 문제가 있는지 쉽게 알 수 있습니다. PS: 그런 경고는 신경쓰지 마세요 . 제 글에는 그런 경고가 없습니다. 를 사용할 때만 나타납니다 .geometry
book
\flushbottom
\raggedbottom
\part
\chapter
titlesec
packages
Overfull \hbox
\lipsum
% !TEX TS-program = LuaLaTeX
\documentclass[11pt,twoside,openany]{book}
\pagestyle{plain}
\usepackage[english, russian]{babel}
\usepackage{fontspec}
\setmainfont{EB Garamond}[
]
\usepackage{microtype}
\usepackage[shortcuts]{extdash}
\usepackage[pagewise]{lineno}
\usepackage[
paperwidth=6in,
paperheight=9in,
inner=13mm,
top=15mm,
outer=20mm,
bottom=24mm, showframe,
heightrounded,
]{geometry}
\usepackage{lettrine}
\setcounter{DefaultLines}{3}
\renewcommand{\DefaultLoversize}{0.1}
\renewcommand{\DefaultLraise}{0}
\renewcommand{\LettrineTextFont}{}
\setlength{\DefaultFindent}{\fontdimen2\font}
\usepackage{lipsum}
\setlength{\parskip}{0pt}
\usepackage{graphicx}
\usepackage[dvipsnames]{xcolor}
\usepackage[pages=some]{background}
\usepackage{fancyhdr}
\fancyhf{}
\renewcommand{\headrulewidth}{0ex}
\fancyfoot[LE,RO]{\thepage}
\pagestyle{fancy}
\fancypagestyle{plain}{%
\fancyhf{}%
\renewcommand{\headrulewidth}{0ex}%
\fancyhf[lef,rof]{\thepage}%
}
\usepackage{etoolbox}
\makeatletter
\patchcmd{\chapter}{\if@openright\cleardoublepage\else\clearpage\fi}{\par}{}{}
\makeatother
%\raggedbottom % If used, it messes up the bottom line the way that its baseline hangs above the frame on some pages
\usepackage{titlesec}
\titleclass{\part}{top}
\titleformat{\part}{\centering\normalfont\large}{\thepart.}{4ex}{\LARGE\centering}
\titlespacing*{\part}{0ex}{2ex}{0ex}
\titleclass{\chapter}{straight}
\titleformat{\chapter}{\centering\normalfont\large}{\thechapter.}{4ex}{\large\centering}
\titlespacing*{\chapter} {0ex}{6ex}{02ex}
\setcounter{secnumdepth}{0}
\usepackage{tocloft}
\begin{document}
\pagestyle{plain}
\pagenumbering{gobble}
\addtocounter{page}{0}
\begin{titlepage}
\centering
{\large TITLE\par}
\vfill
\title{SOME TITLE}
\author{SOME AUTHOR}
\date{}
\end{titlepage}
\clearpage
\frontmatter
\mainmatter
\pagenumbering{arabic}
\part{PART ONE}
\begin{center}
\includegraphics[height=15ex,keepaspectratio]{example-image-a}
\end{center}
\chapter{CHAPTER ONE}
\begin{center}
\includegraphics[height=35ex,keepaspectratio]{example-image-b}
\end{center}
\lipsum[1-12]
\chapter{CHAPTER TWO}
\begin{center}
\includegraphics[height=35ex,keepaspectratio]{example-image-b}
\end{center}
\lipsum[1-12]
\chapter{CHAPTER THREE}
\begin{center}
\includegraphics[height=35ex,keepaspectratio]{example-image-b}
\end{center}
\lipsum[1-12]
\end{document}
답변1
플러시바텀(flushbottom)을 달성하려면 제목 주위에 약간의 유연성이 필요합니다.
아마도
\titlespacing*{\chapter} {0ex}{6ex plus 4ex minus 1ex}{2ex}
그러나 3장 이전 페이지의 부족 경고는 법선을 제거했지만 \clearpage
제목과 이미지가 맞지 않고 페이지를 채울 접착제가 없기 때문에 발생합니다. \filbreak
장 앞의 페이지가 짧아지도록 이렇게 추가할 수 있습니다.
\titleformat{\chapter}{\filbreak\centering\normalfont\large}{\thechapter.}{4ex}{\large\centering}