来自 Unicode 字体(LuaTeX 或 XeTeX)的符号

来自 Unicode 字体(LuaTeX 或 XeTeX)的符号

我想在 LaTeX 的计算机科学报告中加入锤子和镰刀的 unicode U+262D (☭) 符号。我使用的是 ShareLaTeX。我尝试使用

\DeclareUnicodeCharacter{2014}{\dash}

但我明白

Undefined control sequence.

<recently read> \hamsic 

l.35     \hamsic

答案1

来自 Unicode 字体(LuaTeX 或 XeTeX)的符号

如果 LuaTeX 或 XeTeX 与 Unicode 字体一起使用,则只要字体支持此代码点,就可以直接使用该符号。某些字体的示例:

\documentclass{article}
\usepackage{fontspec}
\begin{document}
\newcommand*{\test}[1]{%
  #1:&\fontspec{#1}\symbol{"262D}\\%
}
\begin{tabular}{ll}
\test{DejaVu Sans}
\test{FreeSans}
\test{Segoe UI Symbol}
\end{tabular}
\end{document}

结果 Unicode 字体

符号作为矢量图像(所有 TeX 引擎)

一个SVG 版本(和 PNG)可在 Wikimedia Commons 上找到:文件:U+262D.svg

SVG 路径可直接在 TikZ 中使用。SVG 文件可在文本查看器/编辑器中打开。SVG 路径位于d元素的属性的属性值中path

\usepackage{tikz}
\usetikzlibrary{svg.path}

% SVG path from Sarang:
% https://upload.wikimedia.org/wikipedia/commons/a/ac/U%2B262D.svg
\tikz\fill svg[yscale=-1]{%
  M67,80l13,19L130,65L108,52z%
  M54,103A60,60 0 1,0 55,23A50,50 0 1,1 55,101z%
  m0,0L14,160l19,10L64,110z%
  M95,87l46,79l17,-12L108,79z%
};%

以下示例将符号缩放到大写字母的高度并将其包装在宏中\hamsic。Unicode 代码点 U+262D 映射到此宏:

\documentclass{article}

% Symbol
\usepackage{tikz}
\usetikzlibrary{svg.path}

% SVG path from Sarang:
% https://upload.wikimedia.org/wikipedia/commons/a/ac/U%2B262D.svg
\newcommand*{\hamsic}{%
  \begingroup
    \settoheight{\dimen0 }{H}%
    \resizebox{!}{\dimen0 }{%
      \tikz\fill svg[yscale=-1]{%
        M67,80l13,19L130,65L108,52z%
        M54,103A60,60 0 1,0 55,23A50,50 0 1,1 55,101z%
        m0,0L14,160l19,10L64,110z%
        M95,87l46,79l17,-12L108,79z%
      };%
    }%
  \endgroup
}

\usepackage[utf8]{inputenc}
\DeclareUnicodeCharacter{262D}{\hamsic}

\begin{document}
Symbol: ☭
\end{document}

缩放矢量图像的结果

相关内容