我正在尝试使用 TikZ 刮掉 Humanity+ 徽标。我能做的最好的事情是:
\newcommand\tikzhumanitypluslogo{%
\begin{tikzpicture}[baseline=(current bounding box.north)]
\draw[thick] (-0.04,-0.25) -- (0,0) arc(-265:60:0.25);
\draw (0.06,-0.25) node[]
{\sf\smaller\emph{h}\textsuperscript{\smaller+}};
\end{tikzpicture}}
接近,但还不够接近。如何才能更精确地表示原始徽标,以便将其作为另一个字符插入段落中?
谢谢。
答案1
以下尝试使用ultra thick
线条作为圆圈,绘制H采用无衬线斜体粗体(使用 T1 编码),将加号绘制为两个无衬线粗体减号,因为此字体中的减号有圆角而加号没有,由于减号比加号大,所以稍微调整了大小,并且在H因为角色也有圆角,而原始徽标没有。连接H并且弧线略微移动以与H对角线。最后调整基线tikzpicture
以与文本对齐。
仍然可以进行一些改进,无论如何,最好使用原始徽标,或者通过在 Inkscape 等中跟踪位图来创建矢量版本(如果您希望图像缩放得很好)。但是,这是一个不错的 TikZ 练习,所以我决定无论如何都要尝试一下 :)
\documentclass{article}
\usepackage{tikz}
\usepackage{relsize}
\usepackage[T1]{fontenc}
\newcommand\tikzhumanitypluslogo{%
\begin{tikzpicture}[baseline={([yshift=-1.5pt]current bounding box.center)}]
\draw[ultra thick] (-0.04,-0.25) -- (0.01,0) arc(-265:60:0.25);
\draw (0.18,-0.21) node[] {\resizebox{3.5px}{5px}{\textbf{\textsf{-}}}};
\draw (0.172,-0.202) node[rotate=90] {\resizebox{3.5px}{5px}{\textbf{\textsf{-}}}};
\draw (-0.013,-0.25) node[]
{\scalebox{1.08}{\textsf{\textbf{\textit{h}}}}};
\draw[white,fill=white,thick] (-0.1,-0.38) -- (0.15,-0.38);
\end{tikzpicture}}
\begin{document}
abc \tikzhumanitypluslogo\,def
\end{document}
结果: