summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/spark-otf
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2017-09-27 23:01:58 +0000
committerKarl Berry <karl@freefriends.org>2017-09-27 23:01:58 +0000
commit49c73d01116f5b4c5f2d55a3661b8fa28bc5f831 (patch)
treec0b8ed2496980ec009a82bf3088cdae4a0973522 /Master/texmf-dist/tex/latex/spark-otf
parentfa7c000e3d3c40d1d60e36bc18739ba316cf919d (diff)
spark-otf (27sep17)
git-svn-id: svn://tug.org/texlive/trunk@45411 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/spark-otf')
-rw-r--r--Master/texmf-dist/tex/latex/spark-otf/spark-otf.sty98
1 files changed, 66 insertions, 32 deletions
diff --git a/Master/texmf-dist/tex/latex/spark-otf/spark-otf.sty b/Master/texmf-dist/tex/latex/spark-otf/spark-otf.sty
index 4b05b9d668e..d756b7e4ada 100644
--- a/Master/texmf-dist/tex/latex/spark-otf/spark-otf.sty
+++ b/Master/texmf-dist/tex/latex/spark-otf/spark-otf.sty
@@ -1,4 +1,4 @@
-%% $Id: spark-otf.sty 565 2017-09-20 08:23:06Z herbert $
+%% $Id: spark-otf.sty 582 2017-09-25 06:27:35Z herbert $
%%
%% This file is distributed under the terms of the LaTeX Project Public
%% License from CTAN archives in directory macros/latex/base/lppl.txt.
@@ -6,9 +6,9 @@
%%
% Copyright 2017 Herbert Voss hvoss@tug.org
%%
-\def\spark@version{0.02}
+\def\spark@version{0.04}
\ProvidesPackage{spark-otf}[%
- 2017/09/21 v. \spark@version~(Herbert Voss) Supports spark OpenType for lualatex/xelatex.]
+ 2017/09/26 v. \spark@version~(Herbert Voss) Supports spark OpenType for lualatex/xelatex.]
%
\RequirePackage{ifxetex,ifluatex,xkeyval}
%
@@ -28,33 +28,62 @@
\ifluatex\RequirePackage{luacode}\fi
+\newcommand\setSparkColor[2]{%
+ \addfontfeatures{UprightFeatures={Color=#1}}#2%
+ \addfontfeatures{UprightFeatures={Color=000000}}}
+
\ifspark@usefilenames
\typeout {Using file names for the spark font}%
%----------------------------------------- file names ----------------------------
- \newfontfamily\sparkBarMedium{{Spark - Bar - Medium}}[RawFeature=+calt,\spark@DefaultFeatures]
- \newfontfamily\sparkBarNarrow{{Spark - Bar - Narrow}}[RawFeature=+calt,\spark@DefaultFeatures]
- \newfontfamily\sparkBarThin{{Spark - Bar - Thin}}[RawFeature=+calt,\spark@DefaultFeatures]
+ \font\sparkBarMedium="file:Spark - Bar - Medium.otf:mode=node;+calt;\spark@DefaultFeatures"
+ \font\sparkBarNarrow="file:Spark - Bar - Narrow.otf:mode=node;+calt;\spark@DefaultFeatures"
+ \font\sparkBarThin="file:Spark - Bar - Thin.otf:mode=node;+calt;\spark@DefaultFeatures"
%
- \newfontfamily\sparkDotLine{{Spark - Dot-line - Medium}}[RawFeature=+calt,\spark@DefaultFeatures]
+ \font\sparkDotLine="file:Spark - Dot-line - Medium.otf:mode=node;+calt;\spark@DefaultFeatures"
+%
+ \font\sparkDotMedium="file:Spark - Dot - Medium.otf:mode=node;+calt;\spark@DefaultFeatures"
+ \font\sparkDotSmall="file:Spark - Dot - Small.otf:mode=node;+calt;\spark@DefaultFeatures"
%
- \newfontfamily\sparkDotMedium{{Spark - Dot - Medium}}[RawFeature=+calt,\spark@DefaultFeatures]
- \newfontfamily\sparkDotSmall{{Spark - Dot - Small}}[RawFeature=+calt,\spark@DefaultFeatures]
-%Spark - Bar - Medium.otf Spark - Bar - Thin.otf Spark - Dot - Medium.otf
-%Spark - Bar - Narrow.otf Spark - Dot-line - Medium.otf Spark - Dot - Small.otf
-
\else
\typeout {Using symbolic names for the spark font}%
%----------------------------------------- symbolic names ----------------------------
- \newfontfamily\sparkBarMedium{SparkBar-Medium}[RawFeature=+calt,\spark@DefaultFeatures]
- \newfontfamily\sparkBarNarrow{SparkBar-Narrow}[RawFeature=+calt,\spark@DefaultFeatures]
- \newfontfamily\sparkBarThin{SparkBar-Thin}[RawFeature=+calt,\spark@DefaultFeatures]
+ \newfontface\sparkBarMedium{Spark-BarMedium}[RawFeature=+calt,\spark@DefaultFeatures]
+ \newfontface\sparkBarNarrow{Spark-BarNarrow}[RawFeature=+calt,\spark@DefaultFeatures]
+ \newfontface\sparkBarThin{Spark-BarThin}[RawFeature=+calt,\spark@DefaultFeatures]
%
- \newfontfamily\sparkDotLine{Spark-Dot-lineMedium}[RawFeature=+calt,\spark@DefaultFeatures]
+ \newfontface\sparkDotLine{Spark-Dot-lineMedium}[RawFeature=+calt,\spark@DefaultFeatures]
%
- \newfontfamily\sparkDotMedium{Spark-DotMedium}[RawFeature=+calt,\spark@DefaultFeatures]
- \newfontfamily\sparkDotSmall{Spark-DotSmall}[RawFeature=+calt,\spark@DefaultFeatures]
+ \newfontface\sparkDotMedium{Spark-DotMedium}[RawFeature=+calt,\spark@DefaultFeatures]
+ \newfontface\sparkDotSmall{Spark-DotSmall}[RawFeature=+calt,\spark@DefaultFeatures]
\fi
%
+%
+\def\Extend@List{\@ifnextchar!\Extend@List@i\Extend@List@ii}
+\def\Extend@List@i!#1,#2\@nil{%
+ \def\spark@mark@first{#1}%
+ \def\spark@values@i{#1,}%
+ \Extend@List@iii#2,!,!\@nil
+}
+\def\Extend@List@ii#1\@nil{\Extend@List@iii#1,!,!\@nil}
+%
+\def\Extend@List@iii#1,!#2,!#3\@nil{%
+ \ifx\relax#2\relax % no value with !
+ \edef\spark@values@i{\spark@values@i#1}%
+ \def\spark@mark@last{}%
+ \else
+ \edef\spark@values@i{\spark@values@i#1,#2}%
+ \def\spark@mark@last{#2}%
+ \fi
+}
+
+\def\check@list@values#1{%
+ \def\spark@values@i{}%
+ \def\spark@mark@first{}%
+ \def\spark@mark@last{}%
+ \Extend@List#1\@nil
+}
+
+%
\ifluatex
\begin{luacode}
function RelativeValues(v,m)
@@ -73,28 +102,33 @@ function RelativeValues(v,m)
end
end
\end{luacode}
-\def\spark@line{Line}
+ \def\spark@line{Line}% 12 3 45
\NewDocumentCommand\sparkBar{sO{Medium}O{}mO{}}{{%
- \IfValueTF{#1}%
- {\edef\spark@values{\directlua{RelativeValues({#4},99)}}}%
- {\def\spark@values{#4}}%
- \@nameuse{sparkBar#2}#3\string{\spark@values\string}#5%
+ \check@list@values{#4}%
+ \IfBooleanTF{#1}%
+ {\edef\spark@values@ii{\directlua{RelativeValues({\spark@values@i},99)}}}%
+ {\let\spark@values@ii\spark@values@i}%
+ \@nameuse{sparkBar#2}#3\spark@mark@first\string{\spark@values@ii\string}\spark@mark@last#5%
}}
+% 12 3 45
\NewDocumentCommand\sparkDot{sO{Medium}O{}mO{}}{{%
- \IfValueTF{#1}%
+ \check@list@values{#4}%
+ \IfBooleanTF{#1}%
{\def\spark@arg{#2}%
- \ifx\spark@line\spark@arg \edef\spark@values{\directlua{RelativeValues({#4},9)}}%
- \else \edef\spark@values{\directlua{RelativeValues({#4},99)}}%
+ \ifx\spark@line\spark@arg \edef\spark@values@ii{\directlua{RelativeValues({\spark@values@i},9)}}%
+ \else \edef\spark@values@ii{\directlua{RelativeValues({\spark@values@i},100)}}%
\fi}%
- {\def\spark@values{#4}}%
- \@nameuse{sparkDot#2}#3\string{\spark@values\string}#5%
+ {\let\spark@values@ii\spark@values@i}%
+ \@nameuse{sparkDot#2}\spark@mark@first\string{\spark@values@ii\string}\spark@mark@last%
}}
-\else %% XeLaTeX
+\else %% XeLaTeX% 1 2 34
\NewDocumentCommand\sparkBar{O{Medium}O{}mO{}}{{%
- \@nameuse{sparkBar#1}#2\string{#3\string}#4%
- }}
+ \check@list@values{#3}%
+ \@nameuse{sparkBar#1}\spark@mark@first\string{\spark@values@i\string}\spark@mark@last%
+ }}% 1 2 34
\NewDocumentCommand\sparkDot{O{Medium}O{}mO{}}{{%
- \@nameuse{sparkDot#1}#2\string{#3\string}#4%
+ \check@list@values{#3}%
+ \@nameuse{sparkDot#1}\spark@mark@first\string{\spark@values@i\string}\spark@mark@last%
}}
\fi
%%