5

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}

このタイプセットは次のようになります。

    orem ipsum dolor sit amet、consecteturadipiscingelit。Aliquam enim urna、mattis eu aliquet eget、condimentumidnibh。hachabitasseplateadictumstで。

   ipsum dolor sit amet、consecteturadipiscingelit。Aliquam enim urna、mattis eu aliquet eget、condimentumidnibh。hachabitasseplateadictumstで。

これには、ゼロに設定されている\parskipにもかかわらず、段落のインデントとスキップの両方が誤って含まれています。\parindent

タイプセットの出力は次のようになると予想されます(これは段落の書式設定の醜い選択ですが、問題を示しています)。

orem ipsum dolor sit amet、consecteturadipiscingelit。Aliquam enim urna、mattis eu aliquet eget、condimentumidnibh。hachabitasseplateadictumstで。
ipsum dolor sit amet、consecteturadipiscingelit。Aliquam enim urna、mattis eu aliquet eget、condimentumidnibh。hachabitasseplateadictumstで。

段落を2つの改行で区切ると(つまり、を使用しない\paragraph{}で)、\parskipとの\parindent設定が尊重されることに注意してください。

\paragraph{}を使用するときに、\parskipandコマンドが尊重されない理由、\parindentおよびこれらのコマンドを尊重する方法、あるいは。で作成された段落で同じ効果を達成するコマンドを知っていただければ幸い\paragraph{}です。

読んでくれてありがとう。

ブライアン

4

2 に答える 2

5

@Brian-Norman Grayの応答に対するあなたのコメントに続いて、これをコメントに入れ始めましたが、コードサンプルが大きすぎました。\ paragraph {}は、通常の段落の植字を変更しません。直感に反して、\paragraph{}コマンドで始まる段落は通常の段落ではありません。これは、ドキュメントのセクション要素です。以下のコードを試して、\parskipと\parindentが通常の段落にどのように影響するかを確認してください。ただし、「\paragraph」セクション要素には影響しません。(実際には、\parskipは\paragraph {}アイテムにも影響しますが、\ paragraph{}アイテムの前の間隔は常に\parskipよりわずかに大きいと計算されます。そのため、\paragraph{}要素間には常にスペースがあります。段落は0です。)

LaTeXドキュメントの99%は、おそらく\paragraph{}セクションコマンドを使用しないと思います。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}
于 2010-06-25T19:20:36.713 に答える
1

それは正しい振る舞いのように見えます。あなたは何をすべきだと思います\paragraphか?ヒント:段落を区切るためのものではありません。

回想録のドキュメントによると、は、前後\paragraphのセクショニングコマンドの1つです。例で空にしているコマンドの引数は、段落のタイトルです。\subsubsection\subparagraph

空白行を使用して段落を互いに分離します(これは、\parskip\parindent次元が尊重されている場合です)。または、少しエキゾチックな場合は、を使用し\parます。

于 2010-06-25T16:54:57.470 に答える