我在这里看到一些报告,人们抱怨在极少数情况下,LaTeX 不会排版某些输入文本,而这没有任何明显的原因。而且错误是如此随机,以至于无法报告最小工作示例 (MWE)。
嗯,我发现自己在写博士论文的其中一章时就遇到了这种情况。我最初使用回忆录课程,使用了很多软件包。我被要求准备我的论文,以便以书籍格式(纸张尺寸不同于 DIN-A4)进行打印和装订。因此,我不得不再添加一个包,以优化纸张空间的使用。有些章节是用两种并行运行的语言编写的,使用帕拉科尔,而其他章节则仅用英文撰写。为了优化纸张空间的使用,我添加了adjmulticol包裹。
出现错误的章节是仅用英文撰写的章节,因此我调用adjmulticol包来减少整体文本宽度,以限制该章节每行的字符数。
隔离问题并创建问题的 MWE 的任务一开始很艰巨。然而,经过几次迭代后,我已经能够创建一个足够小的 MWE,可以在这里寻求帮助。
此代码编译时没有任何错误或警告。然而,PDFLaTeX 无法排版最后的单词。
这个案例让我发疯,因为我无法找到解决这个问题的方法。
有人可以给我一些建议吗?
如果可能的话我想保留这个包裹adjmulticol因为经过彻底的研究后,我还没有找到另一个能够提供我所需功能的软件包。
\documentclass[10pt,twoside,onecolumn,openright]{memoir}
%%PREAMBLE
\usepackage{adjmulticol}
\setstocksize{24cm}{17cm}
\settrimmedsize{\stockheight}{\stockwidth}{*}
\settypeblocksize{19cm}{12cm}{*}
\setlrmarginsandblock{17mm}{15mm}{*}
\setulmarginsandblock{20mm}{25mm}{*}
\checkandfixthelayout[classic]
\setlength{\headwidth}{13.8cm}
\makerunningwidth{headings}{\headwidth}
\makeheadposition{headings}{flushright}{flushleft}{flushright}{flushleft}
%%END OF PREAMBLE
\begin{document}
\begin{adjmulticols}{1}{0mm}{18mm}
\section{Summary \label{dirichlet_summary}}
The ease of the element to apply Dirichlet boundary conditions on the rotations is equivalent to that of other rotation-free shell elements. And satisfies one of the main design goals set out for the element in
\end{adjmulticols}
\end{document}
PDFLaTeX 排版文本直到文本第二行的末尾。段落中单词满足不见了。
提前致谢! 佩雷·安德鲁
答案1
这不是一个真正的答案——只是评论太长了。
一个更小的例子是
\documentclass{article}
\usepackage{adjmulticol}
\begin{document}
\begin{adjmulticols}{1}{0mm}{0mm}
Question\par\vskip 1pt
where is the\\duck?????
\end{adjmulticols}
\end{document}
这将产生以下输出,其中最后一行丢失:
从跟踪中可以清楚地看出,\vskip
触发列平衡然后在adjmulticols
尝试强制单列布局时丢失第二列。
我认为的单列模式adjmulticols
目前不可用。
答案2
我认为\@startsection
回忆录中的代码不适合在框中排版。我建议\section
删除adjmulticols
:
\section{Summary \label{dirichlet_summary}}
\begin{adjmulticols}{1}{0mm}{18mm}
\noindent
The ease of the element to apply Dirichlet boundary conditions on
the rotations is equivalent to that of other rotation-free shell
elements. And satisfies one of the main design goals set out for the
element in
\end{adjmulticols}