
모든 하위 섹션에 두 줄(일종의 "페이지 메타데이터")을 오른쪽 정렬하고 싶습니다. 그 라인은절대전체 너비가 됩니다(하나에는 날짜만 포함됨).
이를 위해 나는 (1) 모든 "Underfull hbox" 경고를 피하고 (2) 그렇게 많이 입력하지 않기 위해 RaggedLeft 환경에 배치하는 명령을 정의하려고 했습니다.
그것은 단지 작동하지 않습니다.
% !TEX root = ./raggedleft.tex
\documentclass{article}
\usepackage[english,ngerman]{babel}
\usepackage[hidelinks]{hyperref}
\usepackage{lmodern,textcomp}
\usepackage{ifluatex}
\ifluatex
\usepackage{luacode}
\usepackage{fourier}
\usepackage{fontspec}
\setmainfont{Erewhon}
\else
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{fourier}
\fi
\usepackage[document]{ragged2e}
\setlength{\parskip}{1em}
\setlength{\parindent}{3em}
\renewcommand{\baselinestretch}{1.2}
%% new command: \postheader{datestring}{tagstring}
%% prints the post date and tags right-aligned
\newcommand\postheader[2]{%
\begin{RaggedLeft}%
#1\\#2%
\end{RaggedLeft}%
}
\begin{document}
\postheader{Some weird words on the right}{and more words, hopefully right-bound}
Normal boring left-aligned text.
\end{document}
결과적으로 두 번째 줄은 왼쪽 경계이고 여전히 "hbox 가득 참 부족" 경고가 표시됩니다.
재미있는 사실: 이것을 \FlushRight
작동하는 환경에 배치하면 작동하지만 이것은 (1) 내가 원하는 것이 아니며, (2) 여전히 경고가 표시되고, (3) 전혀 이해가 되지 않습니다. 내가 이해하지 못하는 것을 좋아하지 않습니다 ;) .
non-ragged2e 명령을 사용한 실험에서는 동일한 결과가 나타납니다.
저는 Mac에서 latexmk(luatex 1.10.0 / TeX live 2019 포함)를 사용하고 있습니다.
답변1
무슨 일이 일어나면 \end{RaggedLeft}
단순히 오른쪽 플러시 조판이 종료되지만 단락 종료 명령이 실행되지 않으므로 두 번째 줄이 표준 설정으로 조판됩니다.
귀하의 경우에는 \RaggedLeft
올바른 도구가 아닙니다. 짧은 줄을 사용하면 상자가 가득 차 있지 않기 때문입니다. 표준 \raggedleft
선언을 사용하십시오.
불필요한 부분을 모두 제거하여 예제를 최소화했습니다.
\documentclass{article}
%% new command: \postheader{datestring}{tagstring}
%% prints the post date and tags right-aligned
\newcommand\postheader[2]{%
\par\begingroup\raggedleft #1\\#2\\\endgroup
}
\begin{document}
\postheader{Some weird words on the right}{and more words, hopefully right-bound}
Normal boring left-aligned text.
\end{document}