textbf 将括号闭合之外的所有后续文本加粗

textbf 将括号闭合之外的所有后续文本加粗

我有一系列由 lualatex 编译的 .tex 文件,这个特定的 .tex 文件正在生成标题 4,并且编译后,后面 .tex 文件中的所有文本都显示为粗体,即使它们前面没有 \textbf 或 \bf。我假设我缺少一个括号结尾,但事实并非如此,所以我尝试删除第一个 \textbf,因此该行显示为:

\hspace{1cm}\large{Title 1, \foo}

但这破坏了一切,并给了我这个错误:“!不完整的 \ifnum;第 293 行之后的所有文本都被忽略了。”我能够从标题 3 行中删除 \textbf不是调用但是,我的想法是问题就出在那个功能上。

我快速谷歌了一下这里,但我尝试使用我的函数中的 %s,却无法弄清楚如何使其编译或修复加粗问题。

我真的被这个问题难住了,非常感谢任何建议!!提前谢谢!

\documentclass{article}

\newcommand{\insertquarter}{%
  Q%
  \ifcase\month\or4\or1\or1\or1\or2\or2\or2\or3\or3\or3\or4\or4\fi
}

\newcommand{\lastMonthAlternate}{\ifcase \month\or %
December \or January\or February\or March\or %
April\or May \or June\or July\or August\or September\or October\or November\fi \hspace{1mm}\number \numexpr\year\ifnum\month=1 -1\fi\relax}

\newcommand{\foo}{%
  \ifnum\month=1
    \insertquarter\ \number\numexpr\year-3\relax\ -- \insertquarter\ \number\numexpr\year-1\relax 
  \else%
    \ifnum\month\or4\or7\or10
      \insertquarter\ \number\numexpr\year-2\relax\ -- \insertquarter\ \number\year
    \else%
      \insertquarter\ \number\numexpr\year-2\relax\ -- \lastMonthAlternate
  \fi%
}

\begin{document}

\hspace{1cm}\large\textbf{Title 1, \foo}

\hspace{1cm}\large\textbf{Title 2, \foo}

\hspace{1cm}\large\textbf{Title 3}

\hspace{1cm}\large{Title 4}

\end{document}

答案1

\foo如果您尝试在 之外使用宏\textbf,则会看到错误Incomplete \ifnum。这表明您的\foo宏实际上并没有按您希望的方式工作,因为您缺少\fi。如果我们将其添加\fi到宏中,那么您的文档将按预期工作。

\documentclass{article}

\newcommand{\insertquarter}{%
  Q%
  \ifcase\month\or4\or1\or1\or1\or2\or2\or2\or3\or3\or3\or4\or4\fi
}

\newcommand{\lastMonthAlternate}{\ifcase \month\or %
December \or January\or February\or March\or %
April\or May \or June\or July\or August\or September\or October\or November\fi \hspace{1mm}\number \numexpr\year\ifnum\month=1 -1\fi\relax}

\newcommand{\foo}{%
  \ifnum\month=1
    \insertquarter\ \number\numexpr\year-3\relax\ -- \insertquarter\ \number\numexpr\year-1\relax 
  \else%
    \ifnum\month\or4\or7\or10
      \insertquarter\ \number\numexpr\year-2\relax\ -- \insertquarter\ \number\year
    \else%
      \insertquarter\ \number\numexpr\year-2\relax\ -- \lastMonthAlternate
  \fi
\fi%
}

\begin{document}

\hspace{1cm}\large\textbf{Title 1,\foo }

\hspace{1cm}\large{Title 4}

\end{document}

代码输出

相关内容