视频编解码器的格式名称

视频编解码器的格式名称

我目前正在为德国一所大学撰写硕士论文。我在工作中使用了几种不同的编解码器(如 H.264)。在我的 Latex 文档中编写它们的正确/合理方法是什么?以下是我的问题示例:

  • Latex 知道句子的正确结尾吗?(H.264 中的点可能被视为结尾)

    I also used H.264 and H.265. I also ...
    
  • 我应该用 ~ 将两个单词连在一起吗?

    I also used DivX~Mpeg-4. I also ...
    
  • 编解码器名称是否特殊?它们是否应该与普通单词区别对待?

    I also used \texttt{H.264}.
    

我意识到我的问题有点宽泛。希望至少对第 1 点和第 2 点有明确的答案。我希望对问题 3 有“正常”的解答方式(我没有指导方针)

答案1

你的三个问题的答案是

  • 是的!:没有空格之间的点并不标记新句子,
  • 不!:“DivX Mpeg-4”形成一个封闭的单元,不应分离,但有更好的方法 - 使用\mbox- 如示例中所示,并且
  • 是的!标记是一种重要的印刷特征。

除了第三点之外,你还要记住 LaTeX 的目的是使用逻辑标记。因此,正如评论所说,您应该定义类似这样的内容\newcommand{\Htwosixfour}{\texttt{H.264}}。或者更好的是:

\newcommand{\markcodec}{\texttt}
\newcommand{\Htwosixfour}{\markcodec{H.264}}

这样,您就可以通过重新定义一个宏来更改所有编解码器宏的标记,如果您要处理多个编解码器,这一点至关重要。例如,如果出于某些原因,您最终不想有任何标记,您可以说

\newcommand{\markcodec}{\relax}

您还应该使用xspace专门为这些类型的宏设计的包:\newcommand{\Htwosixfour}{\markcodec{H.264}\xspace}

在完整的示例中,我还为整个过程定义了一个包装器,以便在定义编解码器的控制字时不会重复。

\documentclass{article}
\usepackage{xspace}

\newcommand{\markcodec}{\texttt}
\newcommand{\NewCodecMarkup}[2]{%
  \providecommand#1{}
  \def#1{\mbox{\markcodec{#2}}\xspace}
}

\NewCodecMarkup{\Htwosixfour}{H.264}
\NewCodecMarkup{\DivXmpegfour}{DivX\,Mpeg-4}
%\newcommand\Htwosixfour{\markcodec{H.264}\xspace}
%\newcommand\DivXmpegfour{\markcodec{DivX\nobreakspace Mpeg-4}\xspace}

\begin{document}
I used \Htwosixfour and \DivXmpegfour.
\end{document}

更新

您也可以使用这种轻量级方法(感谢 egreg!):

\documentclass{article}

\newcommand{\codec}[1]{\mbox{\ttfamily #1}}

\begin{document}
I used \codec{H.264} and \codec{DivX\,Mpeg-4}.
\end{document}

现在,这取决于你的喜好,是写\Htwosixfour还是\codec{H.264}写。由你决定。如果你是一个优柔寡断的人(:-))并且想同时使用这两种方法,你可以声明

\newcommand{\codec}[1]{\mbox{\ttfamily #1}}
\newcommand{\NewCodecMarkup}[2]{%
  \providecommand#1{}
  \def#1{\codec{#2}\xspace}
}

相关内容