程式化的 epsilon & 符号

程式化的 epsilon & 符号

我知道在书面形式中,“&”符号有相当多的变化,超出了标准&

我经常看到和使用的一个方法就是我们所说的埃普西隆与符号

我很好奇是否有任何方法可以在 LaTeX 中实现这一点。

我附加了一张从 & 符号 Wikipedia 条目中解放出来的图片。

在此处输入图片描述

答案1

这是受 Carla 建议启发的解决方案,用于生成用于文本模式的 epsilon & 符号。它应该由 XeLaTeX 编译,使用 Dejavu Sans 字体系列。

从 Unicode 字符生成

我把 Unicode 字符组合起来U+03B5U+0375U+02B9。不完全是 Carla 在评论中建议的那些,但我发现这些也很好用。

示例图片:

统一码

代码

% !TeX program = xelatex
% !TEX encoding = UTF-8 Unicode

\documentclass[12pt]{article}
\usepackage{fontspec}
\usepackage{graphicx}
\setmainfont[Ligatures=TeX,Scale=MatchLowercase]{LinLibertine} % Not necessary in main document

% ----------------------------------------------------------%
\newfontfamily\myfont{DejaVu Sans Condensed} 

\def\myamp{{\myfont%
    \raisebox{0.4\depth}{%
    {\scalebox{1}[0.81]{\char"03B5}}% epsilon
    {\scalebox{1}[0.6]{\raisebox{-0.18ex}{\kern-0.69ex\rotatebox[origin=c]{180}{\char"0375}}}}% bottom stroke
    {\scalebox{1}[0.6]{\raisebox{0.43ex}{\kern-0.31ex\char"02B9}}}% top stroke
}}}
% ----------------------------------------------------------%

\begin{document}
    This is a test of some very long message that has no meaning. Lorem ipsum dolor sit amet, consetetuer adipiscing elit. 
    This is a test of some very long message that has no meaning. Lorem ipsum dolor sit amet, consetetuer adipiscing elit.
    Some birds \myamp{} some cats are hanging out in the garden.
    This is a test of some very long message that has no meaning. Lorem ipsum dolor sit amet, consetetuer adipiscing elit. 
    This is a test of some very long message that has no meaning. Lorem ipsum dolor sit amet, consetetuer adipiscing elit.
    
    This \myamp{} that. Cats \myamp{} dogs. Apples \myamp{} oranges. Dollars \myamp{} Euros. Epsilon \myamp{} strokes.
    
    In math mode: $1 \myamp{} 1 = 2$.
    
    \bigskip
    \setlength{\fboxsep}{0.1pt}%
    \setlength\fboxrule{0.1pt}%
    {\tiny tiny: \myamp{}, \fbox{\myamp{}}\par}
    {\footnotesize footnotesize: \myamp{}, \fbox{\myamp{}}\par}
    {\normalsize normal: \myamp{}, \fbox{\myamp{}}\par}
    {\large large: \myamp{}, \fbox{\myamp{}}\par}
    {\LARGE LARGE: \myamp{}, \fbox{\myamp{}}\par}
    {\Huge Huge: \myamp{}, \fbox{\myamp{}}\par}

\end{document}

评论:

  • 这次确实经历了很多尝试和错误。这可能也不是最有效的方法,因为我不太熟悉用于调整框大小/缩放框的命令。欢迎提出建议。
  • 请注意,中的括号的使用\myamp{},这对于在不使用包的情况下保持适当的间距是必要的xparse(请参阅这里)或将其硬编码到宏定义中。如果您愿意,您可以将其用作独立角色。
  • 我将示例中的主字体设置为 Libertine。请注意,您不必在主文档中这样做——我只是发现,当文本主体的其余部分采用 Libertine 字体时,& 符号看起来会更好看。
  • 用于缩放框的单位是ex(1ex 是当前字体中字母 x 的高度),这允许符号根据周围文本的字体大小进行缩放。

使用 \includegraphics 在 pdfLaTeX 中生成

另一种方法是插入矢量图形,而不是自己用 unicode 字符生成矢量图形(这样可以省去优化框的高度/宽度等工作)。我擅自将文件.png维基百科公共资源使用 Inkscape保存到.svg文件中。

然后我将.svg文件导出到一个.pdf文件中,直接包含在我调用的宏中\pdfamp。您可以.pdf从中找到我创建的文件.svg 这里. 图形的缩放是通过奇妙的scalerel包装,缩放到实际的 & 符号的大小。这可能需要进行一些调整,但结果如下:

示例图像

pdf

代码

\documentclass[]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{libertine} % Once again, not necessary in the main document
\usepackage{graphicx,scalerel}

\def\pdfamp{\scalerel*{\includegraphics{myamp}}{\&}}

\begin{document}
    This is a test of some very long message that has no meaning. Lorem ipsum dolor sit amet, consetetuer adipiscing elit. 
    This is a test of some very long message that has no meaning. Lorem ipsum dolor sit amet, consetetuer adipiscing elit.
    Some birds \pdfamp{} some cats are hanging out in the garden.
    This is a test of some very long message that has no meaning. Lorem ipsum dolor sit amet, consetetuer adipiscing elit. 
    This is a test of some very long message that has no meaning. Lorem ipsum dolor sit amet, consetetuer adipiscing elit.
    
    This \pdfamp{} that. Cats \pdfamp{} dogs. Apples \pdfamp{} oranges. Dollars \pdfamp{} Euros. Epsilon \pdfamp{} strokes.
    
    \bigskip
    \setlength{\fboxsep}{0.1pt}%
    \setlength\fboxrule{0.1pt}%
    {\tiny tiny: \pdfamp{}, \fbox{\pdfamp{}}\par}
    {\footnotesize footnotesize: \pdfamp{}, \fbox{\pdfamp{}}\par}
    {\normalsize normal: \pdfamp{}, \fbox{\pdfamp{}}\par}
    {\large large: \pdfamp{}, \fbox{\pdfamp{}}\par}
    {\LARGE LARGE: \pdfamp{}, \fbox{\pdfamp{}}\par}
    {\Huge Huge: \pdfamp{}, \fbox{\pdfamp{}}\par}
\end{document}

评论:

  • 再次强调,此处加载的 Libertine 字体在主字体中不是必需的。但我尝试使用 Computer Modern,结果看起来很糟糕。但您可以随意使用它。
  • 可以找到.pdf从 转换而来的 epsilon & 符号的文件.svg这里。如果此内容被删除,您可以尝试使用 Inkscape.png将 Wikipedia Commons 中的 转换为.svg/.pdf您自己的 —— 这相当简单。
  • 请注意,在文本模式下,使用括号来\pdfamp{}保持适当的间距。

答案2

类似的问题使用不同的符号出现,但期望的最终结果是相同的。用另一个符号覆盖符号 不过,我觉得它仍然可以进行一些工作,因为 epsilon 可能应该垂直居中。

\documentclass{article}
\def\Eamp{\mathrel{%
        \mathchoice{\eamp}{\eamp}{\scriptsize\eamp}{\tiny\eamp}%
}}
\def\eamp{{%
        \setbox0\hbox{/}%
        \rlap{\hbox to \wd0{\hss$\varepsilon$\hss}}\box0
}}

\textwidth=2cm
\begin{document}

    $ A \Eamp B $

\end{document}

Epsilon Ampersand 尝试

相关内容