Pdf 乳胶\newcommand\par问题

Pdf 乳胶\newcommand\par问题,pdf,latex,pdflatex,Pdf,Latex,Pdflatex,当我分配一个新命令并在\par开头调用它时,变量文本和下一个单词之间的空格丢失 \newcommand{\testcmd}{这是一个测试} \par\testcmd foobar 将呈现为: 这是一个testfoobar \par foo\testcmd条 渲染为:foo这是一个测试条 有人以前遇到过这个问题并有解决方案吗 谢谢我不知道这里到底发生了什么事,但有几种方法可以恢复空间: \newcommand{\testcmd}{这是一个测试}%实际上一个更简单的答案是: \newcommand{

当我分配一个新命令并在\par开头调用它时,变量文本和下一个单词之间的空格丢失

\newcommand{\testcmd}{这是一个测试}

\par\testcmd foobar

将呈现为:

这是一个testfoobar

\par foo\testcmd条

渲染为:foo这是一个测试条

有人以前遇到过这个问题并有解决方案吗


谢谢

我不知道这里到底发生了什么事,但有几种方法可以恢复空间:


  • \newcommand{\testcmd}{这是一个测试}%实际上一个更简单的答案是:

    \newcommand{\testcmd}{This is a test}
    
    \par \testcmd \ foobar.
    
    请注意foobar(斜杠和空格)前面的额外“\”。不需要额外的包裹。这与最常用的方法相同,例如:

    Mr.\ Smith
    etc.\ and
    Proc.\ Amer.\ Math.\ Soc.
    

    现在的情况是,TeX lexer考虑任何数量的空白来终止命令,并将其全部吞掉。如果不是这样的话,你就必须在每次命令调用后小心空格。我相信在(洛杉矶)德克萨斯州,把“Mr.Smith”写成“Mr.Smith”是一种习惯为避免在标题和姓氏之间放置换行符。>通常情况下,latex允许您通过使用\“Mr.\Smith”转义空格或使用~“Mr.~Smith”插入非换行空格来表示在这些情况下不需要句间空格通常是首选方法,因为它防止标题和名称之间的断线,或者在缩写的中间,如引文。Hm从来不知道这个选项,谢谢你的信息。