我使用 XeLaTeX 和 Memoir 类以及 xeCJK 包来排版中文。默认情况下,\pfbreak 占用的空间为两行,并且对于页面中间的“普通”分隔符和顶部或底部的“花式”分隔符来说都是相同的。但这似乎无法正常工作,尤其是在更改行距时。以下 MWE 演示了这一点。我使用的中文字体是 SimSun,可从 MS Windows 获得。
% !TEX TS-program = xelatex
% !TEX encoding = UTF-8 Unicode
\documentclass[11pt]{memoir}
\usepackage{xeCJK}
\usepackage{layouts} %To check page layout
\usepackage{indentfirst} %Indent the first paragraph of a section
%%% Book Layout %%%
\setstocksize{5.5in}{4.5in}
\settrimmedsize{5.5in}{4.5in}{*}
\setlength{\trimtop}{0pt}
\setlength{\trimedge}{\stockwidth}
\addtolength{\trimedge}{-\paperwidth}
\settypeblocksize{4in}{3in}{*}
\setulmargins{0.7in}{*}{*}
\setlrmargins{0.75in}{*}{*}
\setmarginnotes{0pt}{0pt}{0pt}
\checkandfixthelayout
%%% xeCJK Options %%%
\setCJKmainfont{SimSun}
\xeCJKsetup{PunctStyle=kaiming}
\xeCJKsetup{CheckSingle=true}
\xeCJKsetup{CJKecglue={\hskip 0.15em plus 0.05em minus 0.05em}}
%%% Other Settings %%%
%\OnehalfSpacing
%\DoubleSpacing
\raggedbottom
\setlength{\parindent}{2em}
\widowpenalty=10
\clubpenalty=10
%%% Document Proper %%%
\begin{document}
刊者半図載道彦主著将供報去発政。夜世更断変断経育発用体担景。案約尽北茨政後写一万持報学率懲。息今論計覧盗球上野無戦社級校坂貨社事。残市旅祈原年囲食円点会表択政理回図街情。筋輸給副止毎芸検掛邪世田悪公記真人。統歩治背中座城記断天代水吾役乗。言回下氏馬市展路認社楽始掲新保治融能原。携細業他求聞真造限技夕坂重図清製総救決。
\pfbreak
締極償化済蜃選材均階戸館巡個。座高提容著信夕稿帰内少含園女毎委戦字広上。学性輪物大用格野報孝第御検槌情保協査文支。忙伴捜再関専場張物比起妻横持作電特愛。力思航勇定児異慢文長針車。並査細出別岬訃無各態粘千調。小待故進輪変勝刊設文在彼根在状当女示重果。康改財逆学検車投格並活年輪納戻主済株欲変。済拍近時宮出聞場理張正思。
任尋禁究法備端校月覧広大渡造。皇午他込意点電祖談載輸域学間。決詳木能更文省作訃日風会検撤。済因鈴変絃注転文著更第編日回激。北準県済補報業海念共視鑑旅著会自無長存発。院初先市電無里勢望多断担長式際思逆球無。園機女権採元提覚面駅画将回汁掲書接報午革。需兵選数数風四載同第善全者進治投。検面海受今記稿品知短作芸次去天発派。
羽早板済換能県表椎転記嗅区挑田刑公。理旅摘初携喰巡物凶費郵延目周口府七館種。表紙行期隆押無通録真転歩実聞済運雇者張助。威調済一百選兆婚挙教済夫。報群峠悼特委松青行協列血澄風団時週内題。毎部初府大真今任夜告季表変技試転。士考候連丸横汗主変整責爆布団確芸豪。田官金阿青慣録失必創城速意円点。釜新善案谷玉知読作表獲免託門前。
遂子空視転率生掲済禁稲遊支稼。聡児全末親常文国陸五左米参和元俊。改童渡築想身図働青将下子風邦。福感議図記少視聞修悟力壁組映子碁夕。菜事持終引義制代色査分鮮農勝系来州全。改測囲勤慢職造給背将南真操域数情。長聞父民投始仕要賞花食一課災必社。顔店質情芸両安却材松検見土何紀政碁。力阪報権断明善結堀購憶同委口行。
\pfbreak
未首禁矢問携今手主判楽意目入簿。由方回作選景手子注進操吉体材動慢時。気多情併表却通前認込援育教留技。詳報経敷選内捜面座記浜問金護電化毎。割方案料羅色京進測国場像供世球法速景。開酸洋止転源女暮亡政問蓮震転要毎至担。格展独市住子千持止府東事玉車徒万春。著記図固女旅実軍所首練個偽喫。供入夜定赤代判応注剖無供混乗解題場予用。
題一掲内文高読領渡密隣席沢最元意南。間言可面再配鹿著応中記相。護体急編合錦崎維航恕周富見生賞持側択。開手調舞過触棚由暫変天派午帳勤入。最語川実子機川館那図業株要条属浩変文兵野。覧交鎖販訴際提向倍久日乗目情。庭在貿年属向絞下試場与内線芸。内垣初便要同待者岐護阪住続引抜時案本司研。載今因姿人回相西互学自教論面節辺喫官堂。
探谷西点投自話問低治素百家探場当乳断試。間最戦経国賞及指奮区変載鉄碁載。帰置持存講心変橋焼入合速城巻地活再食明。場敗枝約半学名断省朝著遇報国田外。五薦権価貧記弱長絶選感毎提先供売止全。大携掲内代関歴瀑落九枚父。立久町報出絵著必夜元学字催府信敵米今戦。覚画合芸月松棋保真約呼果松統中属山真告売。支問長真目和選長不日名出。
当以意産室国同首提転行応内権知逆達実。防著持件後上康室山約際済裁転康立陳。画助生競断読官富東者邦回。盗聞上屋机大度景美観分大優灘適立車同。甲提芸入山言鋭天新相資化脳親回座。登横死康急時福来掲離型根力社地。受実型掲贈記態更容位析美全氷多口報方突。間監来育定度波同提真済就支幡性局土。目意埋陥流実最周文表交相機時。
\end{document}
输出如下:
如您所见,普通换行似乎工作正常,但花式换行却占用了两行以上的空间。
以下是半间距的输出:
现在,花式分隔符几乎正确了,但似乎还是有一点点偏差,而普通分隔符现在太短了。双倍行距也有类似的问题。
我不知道这是故意的还是一个错误。我查看了 memoir.cls 中的代码,但它涉及输出例程,完全超出了我的理解范围。我知道你可以通过设置 \pfbreakskip 来调整空间,但我希望普通和花哨的中断占用完全相同的空间。
任何帮助将不胜感激。
答案1
我知道这是一个很晚的回答,我在问题发布后不久就看到了它,但当时我遇到了这个问题,无法解决。我无法在页面顶部和底部用不间断的文本进行花哨的换行。
现在,我回到我的书中定义一个模板并研究如何修复它。
最后,我停止使用 \pfbreak 快捷方式,而是定义一个执行此操作的命令:
\plainfancybreak{3\baselineskip}{1}{*\quad*\quad*}
这样就将分页符的中间设置为一行高(中间参数中的 1),并且只有当行高为三行(第一个参数)时才放入星号(最后一个参数)。我没有使用 raggedbottom 或 flushbottom 作为设置,并且我的段落跳转和分隔为零,如下所示(我写小说,因此它们之间的分隔必须与同一段落中的行相同)。
\setlength{\parskip}{0pt}
\setlength{\parsep}{0pt}
我没有设置
\pfbreakskip
因为 plainfancybreak 命令会忽略这一点。我从未添加过惩罚,因为我不明白它们的作用。
我希望这能在某种程度上解决您的问题!