使用\ parindent和\ parskip与\ paragraph {}无效

Bri*_*unt 5 latex typesetting memoir xelatex

我正在使用memoir该类创建文档XeLaTeX.我在创建正确的段落演示时遇到了问题,特别是当我用\paragraph{}lorem ipsumLaTeX 创建段落时忽略了这些\parskip\parindent设置.

例如,如果我有一份文件

\documentclass[oneside,11pt]{memoir}
\usepackage{fontspec}% font selecting commands 
\usepackage{xunicode}% unicode character macros 
\usepackage{xltxtra} % some fixes/extras 

\begin{document}
\setlength{\parskip}{0pt} % 1ex plus 0.5ex minus 0.2ex}
\setlength{\parindent}{0pt}
\pagestyle{plain}

\paragraph{}orem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam enim
urna, mattis eu aliquet eget, condimentum id nibh. In hac habitasse platea
dictumst.
\paragraph{}ipsum dolor sit amet, consectetur adipiscing elit. Aliquam enim urna,
mattis eu aliquet eget, condimentum id nibh. In hac habitasse platea dictumst.
\end{document}
Run Code Online (Sandbox Code Playgroud)

这样的排版如下:

    orem ipsum dolor sit amet,consectetur adipiscing elit.Aliquam enim urna,mattis eu aliquet eget,condimentum id nibh.在hac habitasse platea dictumst.

   ipsum dolor sit amet,consectetur adipiscing elit.Aliquam enim urna,mattis eu aliquet eget,condimentum id nibh.在hac habitasse platea dictumst.

这不正确地具有段落缩进和跳过,尽管\parskip并且\parindent被设置为零.

人们会期望排版输出看起来像这样(这是一个丑陋的段落格式选择,但说明了问题):

orem ipsum dolor sit amet,consectetur adipiscing elit.Aliquam enim urna,mattis eu aliquet eget,condimentum id nibh.在hac habitasse platea dictumst.
ipsum dolor sit amet,consectetur adipiscing elit.Aliquam enim urna,mattis eu aliquet eget,condimentum id nibh.在hac habitasse platea dictumst.

我注意到,当我将段落分成两个换行符(即不使用\paragraph{},和)时\parskip,\parindent设置将被尊重.

我非常感谢知道为什么,在使用时\paragraph{},\parskip\parindent命令都不受尊重,以及如何使这些命令得到尊重,或者使用哪些命令与创建的段落实现相同的效果\paragraph{}.

谢谢你的阅读.

布赖恩

Her*_*itz 5

@Brian - 在您对Norman Gray的回复发表评论之后,我开始对此进行评论,但代码示例使其过大.\段{}不会更改常规段落的排版.反直觉地说,\ paragraph {}命令开头的段落不是常规段落; 它是文档中的section元素.使用下面的代码来查看\ parskip和\ parindent如何影响常规段落而不影响"\ paragraph"部分元素.(实际上,\ parskip甚至会影响\ paragraph {}项,但是\ paragraph {}项之前的间距计算总是略大于\ parskip,这就是为什么\ paragraph {}元素之间始终存在空格,即使\ parskip是0.)

我认为99%的LaTeX文档可能永远不会使用\ paragraph {} section命令.LaTeX中的常规段落由(1)空行(下面的"常规段落"1和2)或(2)的\ par命令(下面的"常规段落"3和4)分隔.

\documentclass[oneside,11pt]{memoir}
\usepackage{fontspec}% font selecting commands 
%\usepackage{xunicode}% unicode character macros 
%\usepackage{xltxtra} % some fixes/extras 

\begin{document}
\setlength{\parskip}{0pt} % 1ex plus 0.5ex minus 0.2ex}
\setlength{\parindent}{0pt}
\pagestyle{plain}

\paragraph{paragraph section 2}adorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam enim
urna, mattis eu aliquet eget, condimentum id nibh. In hac habitasse platea
dictumst.

regular paragraph 1 -- orem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam enim
urna, mattis eu aliquet eget, condimentum id nibh. In hac habitasse platea
dictumst.

regular paragraph 2 -- orem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam enim
urna, mattis eu aliquet eget, condimentum id nibh. In hac habitasse platea
dictumst.

\paragraph{paragraph section 2}ipsum dolor sit amet, consectetur adipiscing elit. Aliquam enim urna,
mattis eu aliquet eget, condimentum id nibh. In hac habitasse platea dictumst.
\par regular paragraph 3 -- orem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam enim urna, mattis eu aliquet eget, condimentum id nibh. In hac habitasse platea
dictumst.
\par regular paragraph 4 -- orem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam enim urna, mattis eu aliquet eget, condimentum id nibh. In hac habitasse platea
dictumst.

\end{document}
Run Code Online (Sandbox Code Playgroud)