WrapFigure가 감겨졌다가 다시 떠오릅니다.

WrapFigure가 감겨졌다가 다시 떠오릅니다.

(내 첫 번째 게시물 - 앞으로 내 질문을 개선할 수 있는지/어떻게 하면 알려주세요!) (완전한 예제 파일을 포함하도록 수정됨)

문제의 코드는 스크립트를 통해 자동으로 생성됩니다. 약 12개의 다른 동일한 코드 조각이 있습니다(파일 이름만 변경됨). 12개의 코드 세그먼트 중 3개는 섹션 끝 부분에 예기치 않은 추가 들여쓰기가 있음을 보여줍니다.


\documentclass[11pt, oneside,american]{book}
\usepackage[margin=1in]{geometry}                               % See geometry.pdf to learn the layout options. There are lots.
\geometry{letterpaper}                                  % ... or a4paper or a5paper or ...
\usepackage{graphicx}
\usepackage{float}
\usepackage[verbose]{wrapfig}
\usepackage[american]{babel}
\usepackage[babel]{csquotes}
\usepackage{etoolbox,xkeyval,ifthen,url}
\usepackage{enumitem}
\usepackage[
        backend=biber,
        annotation,
        loadfiles=true % this forces load of external annotations - based on naming convention
]{biblatex-chicago}
\usepackage{filecontents}
\usepackage[all]{nowidow}
\usepackage{titlesec}
\newcommand{\sectionbreak}{\clearpage}
\usepackage{hyperref}
\input{bibs_index.tex}
\renewcommand*{\finentrypunct}{}%
\DeclareFieldFormat{citehyperref}{%
\DeclareFieldAlias{bibhyperref}{noformat}% Avoid nested links
\bibhyperref{#1}}
\savebibmacro{cite}
\renewbibmacro*{cite}{%
  \printtext[citehyperref]{%
  \restorebibmacro{cite}%
  \usebibmacro{cite}}}
\usepackage{fontspec}
\input{fonts.tex}
\providecommand{\tightlist}{%
  \setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}}
\setcounter{secnumdepth}{-1}
\setlist{nosep} %tighten up lists

\begin{document}
\mainmatter
\section{The Contributors}
\subsection{Jane~Smith}
\textsf{Washington, DC, USA}
\par \setlength{\columnsep}{0pt}
\begin{wrapfigure}{l}{0.25\textwidth} \centering \includegraphics[width=0.18\textwidth]{bios/iglazer.jpg}
\end{wrapfigure}
\textsf{ \input{random.txt} }
\WFclear
\subsubsection{Recommendations}\begin{enumerate}
\item \cite{Clippinger2007}
\item \cite{Richer2017}
\end{enumerate}\noindent\rule{\textwidth}{0.2pt}
\printbibliography
\end{document}

이상한 들여쓰기

답변1

가장 간단한 것은 플로트가 없는 것입니다. 다음은 두 개의 필수 인수, 즉 그대로 유지되는 단락 시작 부분의 줄 수와 삽입할 상자를 insbox정의하고 명령하는 \InsertBoxL일반 텍스트 매크로 패키지를 사용하는 가능성입니다 . \InsertBoxR또한 마지막 선택적 인수: TeX 계산이 잘못된 경우를 대비해 줄여야 하는 보충 줄의 수입니다.

\documentclass[english]{article}

\usepackage{geometry}
\usepackage{graphicx}
\usepackage{lipsum} 
\input{insbox}
\makeatletter
\@InsertBoxMargin = 10pt
\makeatother

\begin{document}

\subsection*{Ian~Glazer} \textsf{Washington, DC, USA} \smallskip

\InsertBoxL{0}{\includegraphics[width=0.18\textwidth]{PepeLePew}}[-1]
\sffamily \lipsum[2-10]

\subsubsection{Recommendations}
    \begin{enumerate}
    \item \cite{Clippinger2007}
    \item \cite{Richer2017}
    \end{enumerate}\noindent\rule{\textwidth}{0.2pt}

\end{document} 

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

답변2

이 패키지는 lettrine주로 생략된 대문자용으로 설계되었지만 매우 간단한 코드를 사용하여 단락 시작 부분에 왼쪽으로 묶인 이미지를 넣을 수도 있습니다. 또한 \lettrine이미지 위치를 미세 조정할 수 있는 여러 가지 옵션이 있습니다.

안타깝게도 이 경우에는 첫 줄의 들여쓰기 없이 단일 단락용으로 디자인되었습니다. 그러나 첫 번째 문제의 경우 만들기가 쉽고 \fakepar두 번째 문제의 경우 \lettrine예제와 같이 옵션으로 충분합니다.

음

\documentclass[11pt]{article}
\usepackage[margin=1in]{geometry}        
\usepackage{lettrine}
\usepackage{graphicx}
\usepackage{lipsum} % only for dummy text
\renewcommand\familydefault{\sfdefault}
\parskip1em
\parindent2em

\def\fakepar{\hfill\mbox{}\vspace{\parskip}\newline\mbox{}\hspace{\parindent}}
\begin{document}

\subsection*{Robert Conway}
Shangri-La, Lost Horizons, Kunlun Mountains\par\bigskip

\lettrine[
lines=13,
lraise=-.1,
findent=5em,
nindent=-2em,
lhang=-.2,
depth=1,
image=true]{example-image-golden-upright}{}% 
\lipsum[1][1-4] 
\lipsum[2][1-4]\fakepar
\lipsum[3-7]

\end{document} 

관련 정보