summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2019-05-21 21:08:02 +0000
committerKarl Berry <karl@freefriends.org>2019-05-21 21:08:02 +0000
commit474fcb97dec178e39c0f996b2e4a99f9e4bf1a11 (patch)
tree9008f33e51616cc7f245a234fe143a67a2324082 /Master/texmf-dist/tex
parentae33300b5a7e260971065fd5c13c614351ba3754 (diff)
hmtrump (21may19)
git-svn-id: svn://tug.org/texlive/trunk@51178 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex')
-rw-r--r--Master/texmf-dist/tex/lualatex/hmtrump/hmtrump.sty134
1 files changed, 134 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/lualatex/hmtrump/hmtrump.sty b/Master/texmf-dist/tex/lualatex/hmtrump/hmtrump.sty
new file mode 100644
index 00000000000..5fe1bfb49c5
--- /dev/null
+++ b/Master/texmf-dist/tex/lualatex/hmtrump/hmtrump.sty
@@ -0,0 +1,134 @@
+%
+% This is `hmtrump.sty'
+%
+% Author: Hitomi-san (a.k.a. Carele Smith)
+%
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{hmtrump}[2019/02/07 v1.0]
+\RequirePackage{tikz,xcolor,fontspec}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 定義本体
+
+%: 色の宣言
+\definecolor{hartsuit}{cmyk}{.14,.94,.22,.27}
+\definecolor{diasuit}{cmyk}{.11,.57,.97,.31}
+\definecolor{clubsuit}{cmyk}{.70,.5,.99,.18}
+\definecolor{spadesuit}{cmyk}{.98,.80,.5,.15}
+
+\definecolor{cardback}{gray}{.95}
+\definecolor{cardborder}{gray}{.2}
+\definecolor{cardtext}{gray}{0}
+
+% \hmtc@strut => 支柱\rule[-0.65em]{0pt}{1.85em}
+% \newcommand{\hmtc@strut}{\rule[-0.65em]{0pt}{1.85em}}
+\newcommand{\hmtc@strut}{\relax}
+
+%: 日本語している時対策
+\ifx\ltjdefcharrange\@undefined\relax\else
+ \ltjdefcharrange{24}{
+ "2660-"2667,%各スート
+ "E000-"E005,%ブランク、(合成用ブランク→不使用)、数字10-13
+ "EDDB-"EDE3,%ジョーカーマーク
+ "2160-"216B,%ローマ数字1-12
+ "E5BC-"E5BE,%ローマ数字12-21
+ "1F0A0-"1F0FF%Unicodeトランプ
+ }
+ \ltjsetparameter{jacharrange={-24}}
+\fi
+
+%: \hmtcfont => フォント変更
+\newcommand{\hmtc@trump@font}{NKD04_Playing_Cards_Index}
+\newcommand{\hmtcfont}{\fontspec{\hmtc@trump@font}}
+
+%%: \trump{ランク}{スート}
+\tikzset{hmtcscale/.style={scale=0.9}} % 倍率
+\tikzset{hmtrump/.style={hmtcscale,draw=cardborder,fill=cardback,outer sep=0pt,rounded corners}}
+ % hmtrump スタイルを定義し直す(\tikzset を使って上書きする)ことで、カードのスタイルを変更可能。
+
+\newcommand{\trump}[2]{\hmtc@strut\hmtc@trump@{\hmtc@rank@{#1}}{#2}}
+
+\newcommand{\hmtc@rank@}[1]{\ifx#1T{\char"E002}\else#1\fi} % 10
+
+\newcommand{\hmtc@trump@}[2]{%
+ \ifx#2H{%
+ \tikz[baseline=(T.base)]
+ \node[hmtrump,text=hartsuit]
+ (T)at(0,0){\hmtcfont{#1\char"2665}};%
+ }%
+ \else\ifx#2D{%
+ \tikz[baseline=(T.base)]
+ \node[hmtrump,text=diasuit]
+ (T)at(0,0){\hmtcfont{#1\char"2666}};%
+ }%
+ \else\ifx#2C{%
+ \tikz[baseline=(T.base)]
+ \node[hmtrump,text=clubsuit]
+ (T)at(0,0){\hmtcfont{#1\char"2663}};%
+ }%
+ \else\ifx#2S{%
+ \tikz[baseline=(T.base)]
+ \node[hmtrump,text=spadesuit]
+ (T)at(0,0){\hmtcfont{#1\char"2660}};%
+ }%
+ \else{%
+ \tikz[baseline=(T.base)]
+ \node[hmtrump]
+ (T)at(0,0){\hmtcfont{#1}};%
+ }%
+ \fi\fi\fi\fi%
+}
+
+%%: \trumpx{ランク}
+\newcommand{\trumpx}[1]{\hmtc@strut\hmtc@trump@{\hmtc@rank@{#1}}{x}}
+
+
+%: \hm[S,H,D,C] => それぞれのスートを出力
+\newcommand{\hmH}{\textcolor{hartsuit}{\hmtcfont\char"2665}}
+\newcommand{\hmD}{\textcolor{diasuit}{\hmtcfont\char"2666}}
+\newcommand{\hmC}{\textcolor{clubsuit}{\hmtcfont\char"2663}}
+\newcommand{\hmS}{\textcolor{spadesuit}{\hmtcfont\char"2660}}
+
+%: \joker など=> ジョーカー
+\newcommand{\BLACKJOKER}{\trumpx{\char"F5BC}}
+\newcommand{\WHITEJOKER}{\trumpx{\char"F5BD}}
+\newcommand{\REDJOKER}{\trumpx{\char"F5BE}}
+\newcommand{\JOKER}{\BLACKJOKER}
+
+\newcommand{\blackjoker}{\hmtc@joker@base{\char"F5BC}}
+\newcommand{\whitejoker}{\hmtc@joker@base{\char"F5BD}}
+\newcommand{\redjoker}{\hmtc@joker@base{\char"F5BE}}
+\newcommand{\joker}{\blackjoker}
+
+\newcommand{\hmtc@joker@base}[1]{\hmtc@strut{\hmtcfont%
+ \tikz[baseline=(T.base)]\node[hmtrump](T)at(0,0){
+ \parbox{1em}{
+ \fontsize{0.3em}{0}\rule{0pt}{0pt}\hfil\selectfont JOKER\hfil\rule{0pt}{0pt}\\
+ \fontsize{2.33em}{0}\selectfont\rule{0pt}{0pt}\hfil#1\hfil\rule{0pt}{0pt}%
+ }
+ };%
+}}
+
+
+%: \trumpblank => 枠
+\newcommand{\trumpblank}[1]{%
+ \rule[-0.65em]{0pt}{1.85em}\tikz[baseline=(T.base)]\node[hmtrump](T)at(0,0){#1};%
+}
+
+%: \romanindex => ローマ数字
+\newcounter{hmtc@roman}
+\newcommand{\romanindex}[1]{%
+ \ifnum#1=0\relax%
+ O%
+ \else\ifnum#1<13\relax%
+ \setcounter{hmtc@roman}{"215F}%
+ \addtocounter{hmtc@roman}{#1}%
+ {\hmtcfont\char\value{hmtc@roman}}%
+ \else\ifnum#1>12\relax%
+ \setcounter{hmtc@roman}{"EDCE}%
+ \addtocounter{hmtc@roman}{#1}%
+ {\hmtcfont\char\value{hmtc@roman}}%
+ \fi\fi\fi%
+}
+
+%: \tarottrump => タロットの切札
+\newcommand{\tarottrump}[1]{\trumpx{\romanindex{#1}}}