我想创建一本诗集,并希望将每首诗放在页面中间。我认为计算诗歌的最大宽度并将其放在中间可能比较棘手,所以我决定手动在每节诗句上添加一些填充。
我到目前为止包含了我的代码
\documentclass[a5paper,pagesize,10pt,bibtotoc,pointlessnumbers,
normalheadings,DIV=9,twoside=false]{scrbook}
% twoside, openright
\KOMAoptions{DIV=last}
\usepackage{trajan}
\usepackage[georgian]{babel}
\usepackage{fontspec}
\linespread{1.05}
\usepackage{verbatim} % for comments
\usepackage{listings} % for comments
\usepackage{calc}
\usepackage{verse}
\usepackage{blindtext}
\setmainfont{DejaVu Serif}
\newcommand{\q}[1]{>>\textit{#1}<<}
\title{A book title}
\author{Author Name}
\date{\today}
\begin{document}
\centering{
{\fontsize{22}{25}\selectfont
უშენობა}
}\\
\vspace{10mm}
\begin{verse}
გავაღებ კარს,\\
შევხედავ ცას.\\
ოდესმე ჩავწვდებით,\\
ცხოვრების აზრს.\\
გაუფრთხილდეთ მას,\\
რაც დღეს გვაქვს.\\
\end{verse}
\end{document}
答案1
您必须使用\versewidth
手册中描述的功能verse
;这是一个最简单的例子。
\documentclass[a5paper,pagesize,10pt,bibtotoc,pointlessnumbers,
normalheadings,DIV=9,twoside=false]{scrbook}
% twoside, openright
\KOMAoptions{DIV=last}
\usepackage[georgian]{babel}
\usepackage{fontspec}
\setmainfont{DejaVu Serif}
\usepackage{verse}
\linespread{1.05}
\begin{document}
\begin{center}
\Huge უშენობა
\end{center}
\settowidth{\versewidth}{გაუფრთხილდეთ მას,}
\begin{verse}[\versewidth]
გავაღებ კარს,\\
შევხედავ ცას.\\
ოდესმე ჩავწვდებით,\\
ცხოვრების აზრს.\\
გაუფრთხილდეთ მას,\\
რაც დღეს გვაქვს.
\end{verse}
\end{document}
不要\centering
像你那样使用:这是错误的。
答案2
环境似乎使用内部 lap 宏。但是,如果您不想查找最长的一行,则verse
可以缩进诗句框并使用包varwidth
versewidth
\documentclass[a5paper,pagesize]{scrbook}
\usepackage{trajan}
\usepackage[georgian]{babel}
\usepackage{fontspec}
\setmainfont{DejaVu Serif}
\usepackage[showframe]{geometry}
\usepackage{verse}
\usepackage{varwidth}
\let\Verse\verse
\let\endVerse\endverse
\renewcommand\verse[1]{%
{\fontsize{22}{25}\selectfont#1\par\vspace{10mm}}
\hspace*{3em}%%%%%%%%%%%%%%%
\varwidth{\textwidth}\Verse}
\renewcommand\endverse{\endvarwidth\endVerse}
\begin{document}
\begin{center}
\begin{verse}{უშენობა}
გავაღებ კარს,\\
შევხედავ ცას.\\
ოდესმე ჩავწვდებით,\\
ცხოვრების აზრს.\\
გაუფრთხილდეთ მას,\\
რაც დღეს გვაქვს.\\
\end{verse}
\begin{verse}{უშენობა}
გავაღებ კარს,\\
შევხედავ ცას. ოდესმე ჩავწვდებით,\\
ცხოვრების აზრს. გაუფრთხილდეთ მას,\\
რაც დღეს გვაქვს.\\
\end{verse}
\end{center}
\end{document}
答案3
加载 verse 包后,还要加载 gmverse。
此软件包允许:
- 自动居中 - 基于线长度的加权平均值
- 无需使用 // 来结束每行,只需在节之间放置一个空行即可。(如果您从其他来源复制/粘贴,这很有用)。
它给出了很好的结果。
\documentclass[a5paper,pagesize]{scrbook}
\usepackage{trajan}
\usepackage[georgian]{babel}
\usepackage{fontspec}
\setmainfont{DejaVu Serif}
\usepackage[showframe]{geometry}
\usepackage{verse,gmverse}
% look, no centering command needed
\begin{document}
\vocweigh3. %not needed according to doc, but it doesn't seem to work without it
\poemtitle{უშენობა}
\begin{verse}
გავაღებ კარს,
შევხედავ ცას.\\
ოდესმე ჩავწვდებით,
ცხოვრების აზრს.
გაუფრთხილდეთ მას,
რაც დღეს გვაქვს.
\end{verse}
\poemtitle{უშენობა}
\begin{verse}
გავაღებ კარს,
შევხედავ ცას. ოდესმე ჩავწვდებით,
ცხოვრების აზრს. გაუფრთხილდეთ მას,
რაც დღეს გვაქვს.
\end{verse}
\end{document}
它还使用 poemtitle 命令来轻松设置标题样式,在回忆录包中有一个 \PoemTitle,它允许对诗歌进行编号,并可以轻松获得第一行的索引。