如何排版 Triforce?

如何排版 Triforce?

排版的最佳实践方法是什么三角力量符号从 Nintendo® Zelda™ 系列中了解吗?

答案1

这是一个漂亮的阴影 TikZ 版本,您可以用不同大小绘制。

您必须使用\triforce一个参数调用该宏,该参数是 Triforce 的宽度,例如\triforce{10cm}

\documentclass{article}

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}

\usepackage[svgnames]{xcolor}

\usepackage{tikz}
\usetikzlibrary{shadings, calc}

\colorlet{triforcefilloutercolor}{Gold!50!Yellow}
\colorlet{triforcefillinnercolor}{white!80!triforcefilloutercolor}
\colorlet{triforceoutlineinnercolor}{white}
\colorlet{triforceoutlineoutercolor}{Goldenrod}

\tikzset{%
    triforcefillshade/.style={%
        inner color=triforcefillinnercolor,%
        outer color=triforcefilloutercolor%
    },%
    triforceoutlineshade/.style={%
        inner color=triforceoutlineinnercolor,%
        outer color=triforceoutlineoutercolor%
    }%
}

\newcommand{\triforce}[1]{%
    \begin{tikzpicture}%
        \newdimen\triforcewidth%
        \newdimen\triforceheight%
        \triforcewidth=#1%
        \pgfmathparse{sqrt(3)}%
        \pgfmathsetlength{\triforceheight}{\pgfmathresult / 2 * \triforcewidth}%
        %
        \foreach \x / \y in {0 / 0, 0.5\triforcewidth / 0, 0.25\triforcewidth / 0.5\triforceheight}%
        {%
            \shade[triforcefillshade, xshift=\x, yshift=\y]%
                (0, 0)  -- +(.5\triforcewidth, 0) -- +(60:.5\triforcewidth) -- cycle;%
            \shade[triforceoutlineshade, xshift=\x, yshift=\y]%
                (0, 0)  -- +(.5\triforcewidth, 0) -- +(60:.5\triforcewidth) -- cycle%
                (30:.0175\triforcewidth) -- ($(60:.5\triforcewidth) + (-90:.0175\triforcewidth)$) -- ($(0.5\triforcewidth, 0) + (150:.0175\triforcewidth)$) -- cycle;%
        }%
    \end{tikzpicture}%
}

\begin{document}
\triforce{10cm}
\end{document}

答案2

一个简单的tikz解决方案:

\documentclass{article}
\usepackage{tikz}
\begin{document}
\tikz\fill[yellow]
  (0,0)  -- +(1,0) -- +(60:1) -- cycle
  (1,0)  -- +(1,0) -- +(60:1) -- cycle
  (60:1) -- +(1,0) -- +(60:1) -- cycle
;
\end{document}

结果

答案3

使用堆栈。顶部是简单的\TriangleUp符号堆栈,而底部使用\stackinset相同的缩小来实现边框,如 wiki 参考中所示。

\documentclass{article}
\usepackage{stackengine,xcolor,bbding,graphicx}
\def\LTri{\stackinset{c}{}{c}{-.2pt}{\scalebox{.85}
  {\textcolor{yellow!20}{\TriangleUp}}}
  {\textcolor{yellow}{\TriangleUp}}}
\begin{document}
\textcolor{yellow}{\stackon[0pt]{\TriangleUp\TriangleUp}{\TriangleUp}}

\stackon[0pt]{\LTri\LTri}{\LTri}
\end{document}

在此处输入图片描述

答案4

只是为了好玩,pict2e

\documentclass{standalone}
\usepackage{pict2e}
\begin{document}
\begin{picture}(2,1.732050808)
\newsavebox{\tripart}
\savebox{\tripart}{\moveto(0,0)\lineto(1,0)\lineto(0.5,0.866025404)\closepath\fillpath}
\put(0,0){\usebox{\tripart}}
\put(1,0){\usebox{\tripart}}
\put(0.5,0.866025404){\usebox{\tripart}}
\end{picture}
\end{document}

在此处输入图片描述

相关内容