\|、\textdoublevertline、\textdoublepipe 和 \parallel 之间有什么区别?

\|、\textdoublevertline、\textdoublepipe 和 \parallel 之间有什么区别?

我目前正在写我的学士论文,主题是数学公式的在线手写识别(见http://write-math.com)。我目前只识别和detexify用到相同技术的符号(我知道是同一种技术,因为我看过detexify的毕业论文)。

我一直认为 detexify 中可以改进的一件事是“相似组”。因此,有些符号似乎被渲染为相同的,只有当您有上下文(即其他符号)时才有语义差异或差异。一个例子是\Sigma\sum。我认为在纯符号识别方面,这些符号应该被同等对待。只有当您有上下文时,您才能区分它们。

在画了很多符号并研究了它们的分类后,我找到了这四个

  • \|(数学模式)
  • \textdoublepipe(文本模式)
  • \textdoublevertline(文本模式)
  • \parallel(并且,显然不同,但差别也不大\shortparallel:)

在上下文相关渲染方面\|和之间有区别吗?\parallel

在上下文相关的渲染或语义方面,\textdoublepipe和之间有什么区别吗?\textdoublevertline

答案1

命令\|\parallel打印相同的符号;这里是它们的定义fontmath.ltx

\DeclareMathDelimiter{\Vert}
   {\mathord}{symbols}{"6B}{largesymbols}{"0D}
\let\|=\Vert

\DeclareMathSymbol{\parallel}{\mathrel}{symbols}{"6B}

第一个定义的含义是\Vert(其为\|别名)在请求正常大小时"6B在 mathgroup 中的字体插槽中打印symbols字形,并且当不在分隔符上下文中使用时(在\left\right\bigl\bigr朋友之后),它表现为普通符号。

的定义\parallel告诉 TeX 使用完全相同的字形,但将其视为关系符号。所以

$\|\alpha v\|=\alpha\|v\|$

将导致

相关内容