diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/heros-otf/heros-otf.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/heros-otf/heros-otf.sty | 449 |
1 files changed, 449 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/heros-otf/heros-otf.sty b/Master/texmf-dist/tex/latex/heros-otf/heros-otf.sty new file mode 100644 index 00000000000..73015c7229e --- /dev/null +++ b/Master/texmf-dist/tex/latex/heros-otf/heros-otf.sty @@ -0,0 +1,449 @@ +%% $Id: heros-otf.sty 624 2022-10-13 09:18:22Z herbert $ +%% +%% This file is distributed under the terms of the LaTeX Project Public +%% License from CTAN archives in directory macros/latex/base/lppl.txt. +%% Either version 1.3 or, at your option, any later version. +%% +% +% +\ProvidesPackage{heros-otf}[% + 2022/10/13 v. 0.01 (Herbert Voss) Supports heros fonts for lualatex and xelatex.] + +\RequirePackage{iftex,xkeyval,textcomp} + +\newif\ifheros@lining \heros@liningtrue +\newif\ifheros@tabular \heros@tabulartrue +\newif\ifheros@usefilenames \heros@usefilenamestrue +\newif\ifheros@condensed \heros@condensedfalse + +\DeclareOptionX{lining}[true]{\@nameuse{heros@lining#1}} +\DeclareOptionX{nf}[true]{\@nameuse{heros@lining#1}} +\DeclareOptionX{lf}[true]{\@nameuse{heros@lining#1}} +\DeclareOptionX{oldstyle}[true]{\@nameuse{if#1}\heros@liningfalse\else\heros@liningtrue\fi} +\DeclareOptionX{osf}[true]{\@nameuse{if#1}\heros@liningfalse\else\heros@liningtrue\fi} + +\DeclareOptionX{condensed}{\heros@condensedtrue} +\DeclareOptionX{default}{\renewcommand\familydefault{\sfdefault}} + +\DeclareOptionX{usefilenames}[true]{\@nameuse{heros@usefilenames#1}} + +\DeclareOptionX{tabular}[true]{\@nameuse{heros@tabular#1}} +\DeclareOptionX{t}[true]{\@nameuse{heros@tabular#1}} +\DeclareOptionX{proportional}[true]{\@nameuse{if#1}\heros@tabularfalse\else\heros@tabulartrue\fi} +\DeclareOptionX{p}[true]{\@nameuse{if#1}\heros@tabularfalse\else\heros@tabulartrue\fi} + +\newcommand*\herosSF@scale{1} +\DeclareOptionX{ScaleSF}{\renewcommand*{\herosSF@scale}{#1}} + +\def\heros@defaultfeatures{} +\DeclareOptionX{defaultfeatures}{\def\heros@defaultfeatures{#1}} + +\ProcessOptionsX\relax + +\RequirePackage{fontspec} + +\ifheros@lining + \def\heros@figurestyle{+lnum;-onum} +\else + \def\heros@figurestyle{+onum;-lnum} +\fi + +\ifheros@tabular + \def\heros@figurealign{+tnum} +\else + \def\heros@figurealign{+pnum} +\fi + +\ifxetex\XeTeXtracingfonts=1\fi +\defaultfontfeatures[\sffamily]{ + Ligatures = TeX , + SmallCapsFeatures={Letters=SmallCaps},% \ifluatex,Renderer=Basic\fi}, + \heros@defaultfeatures +} + +\ifheros@usefilenames +%------------------------ filenames start ------------------------- + +%texgyreheros-bold.otf texgyreheros-italic.otf +%texgyreheros-bolditalic.otf texgyreheros-regular.otf + +\ifheros@condensed +\setsansfont{texgyreheroscn}[ + RawFeature = {\heros@figurealign;\heros@figurestyle}, + Scale = \herosSF@scale, + UprightFont = *-regular, + ItalicFont = *-italic, + ItalicFeatures = { SmallCapsFont = *-italic }, + SlantedFont = *-regular, + SlantedFeatures= {FakeSlant=0.2}, + BoldFont = *-bold, + BoldFeatures = { SmallCapsFont = *-bold }, + BoldItalicFont = *-bolditalic, + BoldItalicFeatures = { SmallCapsFont = *-bolditalic }, + BoldSlantedFont= *-bold, + BoldSlantedFeatures= {FakeSlant=0.2, SmallCapsFont = *-bold }, + SmallCapsFont = *-regular, +% SmallCapsFeatures={RawFeature=+smcp}, + SmallCapsFeatures={Letters=SmallCaps}, + Extension = .otf +] +\else +\setsansfont{texgyreheros}[ + RawFeature = {\heros@figurealign;\heros@figurestyle}, + Scale = \herosSF@scale, + UprightFont = *-regular, + ItalicFont = *-italic, + ItalicFeatures = { SmallCapsFont = *-italic }, + SlantedFont = *-regular, + SlantedFeatures= {FakeSlant=0.2}, + BoldFont = *-bold, + BoldFeatures = { SmallCapsFont = *-bold }, + BoldItalicFont = *-bolditalic, + BoldItalicFeatures = { SmallCapsFont = *-bolditalic }, + BoldSlantedFont= *-bold, + BoldSlantedFeatures= {FakeSlant=0.2, SmallCapsFont = *-bold }, + SmallCapsFont = *-regular, +% SmallCapsFeatures={RawFeature=+smcp}, + SmallCapsFeatures={Letters=SmallCaps}, + Extension = .otf +] +\newfontfamily\heroscn{texgyreheroscn}[ + RawFeature = {\heros@figurealign;\heros@figurestyle}, + Scale = \herosSF@scale, + UprightFont = *-regular, + ItalicFont = *-italic, + ItalicFeatures = { SmallCapsFont = *-italic }, + SlantedFont = *-regular, + SlantedFeatures= {FakeSlant=0.2}, + BoldFont = *-bold, + BoldFeatures = { SmallCapsFont = *-bold }, + BoldItalicFont = *-bolditalic, + BoldItalicFeatures = { SmallCapsFont = *-bolditalic }, + BoldSlantedFont= *-bold, + BoldSlantedFeatures= {FakeSlant=0.2, SmallCapsFont = *-bold }, + SmallCapsFont = *-regular, +% SmallCapsFeatures={RawFeature=+smcp}, + SmallCapsFeatures={Letters=SmallCaps}, + Extension = .otf +] +\fi + +\newfontfamily\heros{texgyreheros}[ + RawFeature = {\heros@figurealign;\heros@figurestyle}, + Scale = \herosSF@scale, + UprightFont = *-regular, + ItalicFont = *-italic, + ItalicFeatures = { SmallCapsFont = *-italic }, + SlantedFont = *-regular, + SlantedFeatures= {FakeSlant=0.2}, + BoldFont = *-bold, + BoldFeatures = { SmallCapsFont = *-bold }, + BoldItalicFont = *-bolditalic, + BoldItalicFeatures = { SmallCapsFont = *-bolditalic }, + BoldSlantedFont= *-bold, + BoldSlantedFeatures= {FakeSlant=0.2, SmallCapsFont = *-bold }, + SmallCapsFont = *-regular, +% SmallCapsFeatures={RawFeature=+smcp}, + SmallCapsFeatures={Letters=SmallCaps}, + Extension = .otf +] + +\newfontfamily\herosOsF{texgyreheros}[ + RawFeature = {+onum}, + Scale = \herosSF@scale , + UprightFont = *-regular, + ItalicFont = *-italic, + ItalicFeatures = { SmallCapsFont = *-italic }, + SlantedFont = *-regular, + SlantedFeatures= {FakeSlant=0.2}, + BoldFont = *-bold, + BoldFeatures = { SmallCapsFont = *-bold }, + BoldItalicFont = *-bolditalic, + BoldItalicFeatures = { SmallCapsFont = *-bolditalic }, + BoldSlantedFont= *-bold, + BoldSlantedFeatures= {FakeSlant=0.2, SmallCapsFont = *-bold }, + SmallCapsFont = *-regular, +% SmallCapsFeatures={RawFeature=+smcp}, + SmallCapsFeatures={Letters=SmallCaps}, + Extension = .otf +] +\newfontfamily\heroscnOsF{texgyreheroscn}[ + RawFeature = {+onum}, + Scale = \herosSF@scale , + UprightFont = *-regular, + ItalicFont = *-italic, + ItalicFeatures = { SmallCapsFont = *-italic }, + SlantedFont = *-regular, + SlantedFeatures= {FakeSlant=0.2}, + BoldFont = *-bold, + BoldFeatures = { SmallCapsFont = *-bold }, + BoldItalicFont = *-bolditalic, + BoldItalicFeatures = { SmallCapsFont = *-bolditalic }, + BoldSlantedFont= *-bold, + BoldSlantedFeatures= {FakeSlant=0.2, SmallCapsFont = *-bold }, + SmallCapsFont = *-regular, +% SmallCapsFeatures={RawFeature=+smcp}, + SmallCapsFeatures={Letters=SmallCaps}, + Extension = .otf +] + +\newfontfamily\herosTLF{texgyreheros}[ + RawFeature = {+tnum;-onum}, + Scale = \herosSF@scale , + UprightFont = *-regular, + ItalicFont = *-italic, + ItalicFeatures = { SmallCapsFont = *-italic }, + SlantedFont = *-regular, + SlantedFeatures= {FakeSlant=0.2}, + BoldFont = *-bold, + BoldFeatures = { SmallCapsFont = *-bold }, + BoldItalicFont = *-bolditalic, + BoldItalicFeatures = { SmallCapsFont = *-bolditalic }, + BoldSlantedFont= *-bold, + BoldSlantedFeatures= {FakeSlant=0.2, SmallCapsFont = *-bold }, + SmallCapsFont = *-regular, +% SmallCapsFeatures={RawFeature=+smcp}, + SmallCapsFeatures={Letters=SmallCaps}, + Extension = .otf +] +\newfontfamily\heroscnTLF{texgyreheroscn}[ + RawFeature = {+tnum;-onum}, + Scale = \herosSF@scale , + UprightFont = *-regular, + ItalicFont = *-italic, + ItalicFeatures = { SmallCapsFont = *-italic }, + SlantedFont = *-regular, + SlantedFeatures= {FakeSlant=0.2}, + BoldFont = *-bold, + BoldFeatures = { SmallCapsFont = *-bold }, + BoldItalicFont = *-bolditalic, + BoldItalicFeatures = { SmallCapsFont = *-bolditalic }, + BoldSlantedFont= *-bold, + BoldSlantedFeatures= {FakeSlant=0.2, SmallCapsFont = *-bold }, + SmallCapsFont = *-regular, +% SmallCapsFeatures={RawFeature=+smcp}, + SmallCapsFeatures={Letters=SmallCaps}, + Extension = .otf +] +%------------------------ filenames stop ------------------------- +\else +%------------------------ symbolic names start ------------------------- +\ifheros@condensed +\setsansfont{TeX Gyre Heros Condensed}[ + RawFeature = {\heros@figurealign,\heros@figurestyle}, + Scale = \herosSF@scale , + UprightFont = * Regular, + SlantedFont = * Regular, + SlantedFeatures = {FakeSlant=0.2}, + ItalicFont = * Italic, + ItalicFeatures = { SmallCapsFont = * Italic }, + BoldFont = * Bold, + BoldFeatures = { SmallCapsFont = * Bold }, + BoldItalicFont = * Bold Italic, + BoldItalicFeatures= { SmallCapsFont = * Bold Italic }, + SmallCapsFont = * Regular, + SmallCapsFeatures = {RawFeature=+smcp}, + BoldSlantedFont = * Bold, + BoldSlantedFeatures = {FakeSlant=0.2, SmallCapsFont = * Bold }, + SmallCapsFeatures = {Letters=SmallCaps}, +] + +\else +\setsansfont{TeX Gyre Heros}[ + RawFeature = {\heros@figurealign,\heros@figurestyle}, + Scale = \herosSF@scale , + UprightFont = * Regular, + SlantedFont = * Regular, + SlantedFeatures = {FakeSlant=0.2}, + ItalicFont = * Italic, + ItalicFeatures = { SmallCapsFont = * Italic }, + BoldFont = * Bold, + BoldFeatures = { SmallCapsFont = * Bold }, + BoldItalicFont = * Bold Italic, + BoldItalicFeatures= { SmallCapsFont = * Bold Italic }, + SmallCapsFont = * Regular, + SmallCapsFeatures = {RawFeature=+smcp}, + BoldSlantedFont = * Bold, + BoldSlantedFeatures = {FakeSlant=0.2, SmallCapsFont = * Bold }, + SmallCapsFeatures = {Letters=SmallCaps}, +] +\fi +\newfontfamily\heros{TeX Gyre Heros}[ + RawFeature = {\heros@figurealign,\heros@figurestyle}, + Scale = \herosSF@scale , + UprightFont = * Regular, + SlantedFont = * Regular, + SlantedFeatures = {FakeSlant=0.2}, + ItalicFont = * Italic, + ItalicFeatures = { SmallCapsFont = * Italic }, + BoldFont = * Bold, + BoldFeatures = { SmallCapsFont = * Bold }, + BoldItalicFont = * Bold Italic, + BoldItalicFeatures= { SmallCapsFont = * Bold Italic }, + SmallCapsFont = * Regular, + SmallCapsFeatures = {RawFeature=+smcp}, + BoldSlantedFont = * Bold, + BoldSlantedFeatures = {FakeSlant=0.2, SmallCapsFont = * Bold }, + SmallCapsFeatures = {Letters=SmallCaps}, +] +\newfontfamily\heroscn{TeX Gyre Heros Condensed}[ + RawFeature = {\heros@figurealign,\heros@figurestyle}, + Scale = \herosSF@scale , + UprightFont = * Regular, + SlantedFont = * Regular, + SlantedFeatures = {FakeSlant=0.2}, + ItalicFont = * Italic, + ItalicFeatures = { SmallCapsFont = * Italic }, + BoldFont = * Bold, + BoldFeatures = { SmallCapsFont = * Bold }, + BoldItalicFont = * Bold Italic, + BoldItalicFeatures= { SmallCapsFont = * Bold Italic }, + SmallCapsFont = * Regular, + SmallCapsFeatures = {RawFeature=+smcp}, + BoldSlantedFont = * Bold, + BoldSlantedFeatures = {FakeSlant=0.2, SmallCapsFont = * Bold }, + SmallCapsFeatures = {Letters=SmallCaps}, +] +\newfontfamily\herosOsF{TeX Gyre Heros}[ + RawFeature = {OldStyle,Proportional}, + Scale = \herosSF@scale , + UprightFont = * Regular, + SlantedFont = * Regular, + SlantedFeatures = {FakeSlant=0.2}, + ItalicFont = * Italic, + ItalicFeatures = { SmallCapsFont = * Italic }, + BoldFont = * Bold, + BoldFeatures = { SmallCapsFont = * Bold }, + BoldItalicFont = * Bold Italic, + BoldItalicFeatures= { SmallCapsFont = * Bold Italic }, + SmallCapsFont = * Regular, + SmallCapsFeatures = {RawFeature=+smcp}, + BoldSlantedFont = * Bold, + BoldSlantedFeatures = {FakeSlant=0.2, SmallCapsFont = * Bold }, + SmallCapsFeatures = {Letters=SmallCaps}, +] +\newfontfamily\heroscnOsF{TeX Gyre Heros}[ + RawFeature = {OldStyle,Proportional}, + Scale = \herosSF@scale , + UprightFont = * Regular, + SlantedFont = * Regular, + SlantedFeatures = {FakeSlant=0.2}, + ItalicFont = * Italic, + ItalicFeatures = { SmallCapsFont = * Italic }, + BoldFont = * Bold, + BoldFeatures = { SmallCapsFont = * Bold }, + BoldItalicFont = * Bold Italic, + BoldItalicFeatures= { SmallCapsFont = * Bold Italic }, + SmallCapsFont = * Regular, + SmallCapsFeatures = {RawFeature=+smcp}, + BoldSlantedFont = * Bold, + BoldSlantedFeatures = {FakeSlant=0.2, SmallCapsFont = * Bold }, + SmallCapsFeatures = {Letters=SmallCaps}, +] + +\newfontfamily\herosTLF{TeX Gyre Heros}[ + RawFeature = {Lining,Monospaced}, + Scale = \herosSF@scale , + UprightFont = * Regular, + SlantedFont = * Regular, + SlantedFeatures = {FakeSlant=0.2}, + ItalicFont = * Italic, + ItalicFeatures = { SmallCapsFont = * Italic }, + BoldFont = * Bold, + BoldFeatures = { SmallCapsFont = * Bold }, + BoldItalicFont = * Bold Italic, + BoldItalicFeatures= { SmallCapsFont = * Bold Italic }, + SmallCapsFont = * Regular, + SmallCapsFeatures = {RawFeature=+smcp}, + BoldSlantedFont = * Bold, + BoldSlantedFeatures = {FakeSlant=0.2, SmallCapsFont = * Bold }, + SmallCapsFeatures = {Letters=SmallCaps}, +] +\newfontfamily\heroscnTLF{TeX Gyre Heros}[ + RawFeature = {Lining,Monospaced}, + Scale = \herosSF@scale , + UprightFont = * Regular, + SlantedFont = * Regular, + SlantedFeatures = {FakeSlant=0.2}, + ItalicFont = * Italic, + ItalicFeatures = { SmallCapsFont = * Italic }, + BoldFont = * Bold, + BoldFeatures = { SmallCapsFont = * Bold }, + BoldItalicFont = * Bold Italic, + BoldItalicFeatures= { SmallCapsFont = * Bold Italic }, + SmallCapsFont = * Regular, + SmallCapsFeatures = {RawFeature=+smcp}, + BoldSlantedFont = * Bold, + BoldSlantedFeatures = {FakeSlant=0.2, SmallCapsFont = * Bold }, + SmallCapsFeatures = {Letters=SmallCaps}, +] + +\fi +%------------------------ symbolic names stop ------------------------- + +%\ifheros@nomath\else +% \typeout{*************************************^^J% +% * Using heros math *^^J% +% *************************************}% +%\setmathfont{texgyreheros-math.otf}[AutoFakeBold,RawFeature=\herosMM@feature] +%\fi + +\def\sufigures{\addfontfeatures{VerticalPosition=Superior}} +\DeclareTextFontCommand{\textsup}{\sufigures} +\DeclareTextFontCommand{\textinit}{\herosInitials}% Initials + +\def\Lsup#1{{\addfontfeature{RawFeature=+sups}#1}} +\def\Lsinf#1{{\addfontfeature{RawFeature=+sinf}#1}} +\def\Land{{\addfontfeature{RawFeature=+ss06}\&}} + +\def\Lcase#1{{\addfontfeature{RawFeature=case}#1}} +\def\LCASE{\@ifnextchar-\L@CASE\L@@CASE} +\def\L@CASE-{\addfontfeature{RawFeature=-case}} +\def\L@@CASE#1{\addfontfeature{RawFeature=+case}\ifx#1+\else#1\fi} + +\def\Lfrac#1{{\addfontfeature{RawFeature=+frac}#1}} +\def\LFRAC{\@ifnextchar-\L@FRAC\L@@FRAC} +\def\L@FRAC-{\addfontfeature{RawFeature=-frac}} +\def\L@@FRAC#1{\addfontfeature{RawFeature=+frac}\ifx#1+\else#1\fi} + +\def\Lcpsp#1{{\addfontfeature{RawFeature=+cpsp}#1}} +\def\LCPSP{\@ifnextchar-\L@CPSP\L@@CPSP} +\def\L@CPSP-{\addfontfeature{RawFeature=-cpsp}} +\def\L@@CPSP#1{\addfontfeature{RawFeature=+cpsp}\ifx#1+\else#1\fi} + +\def\Lss#1#2#3{{\addfontfeature{RawFeature=+ss#1#2}#3}} +\def\LSS#1#2{\addfontfeature{RawFeature=+ss#1#2}} + +\def\Lctosc#1{{\addfontfeature{RawFeature=+c2sc}#1}} +\def\LCtoSC{\@ifnextchar-\L@CtoSC\L@@CtoSC} +\def\L@CtoSC-{\addfontfeature{RawFeature=-c2sc}} +\def\L@@CtoSC#1{\addfontfeature{RawFeature=+c2sc}\ifx#1+\else#1\fi} + +\def\Lctosmcp#1{{\addfontfeature{RawFeature={+c2sc,+smcp}}#1}} +\def\LCtoSMCP{\@ifnextchar-\L@CtoSMCP\L@@CtoSMCP} +\def\L@CtoSMCP-{\addfontfeature{RawFeature={-c2sc,-smcp}}} +\def\L@@CtoSMCP#1{\addfontfeature{RawFeature={+c2sc,+smcp}}\ifx#1+\else#1\fi} + +\def\Lsalt#1{{\addfontfeature{RawFeature=+salt}#1}} +\def\LSALT{\@ifnextchar-\L@SALT\L@@SALT} +\def\L@SALT-{\addfontfeature{RawFeature=-salt}} +\def\L@@SALT#1{\addfontfeature{RawFeature=+salt}\ifx#1+\else#1\fi} + +\def\Lliga#1{{\addfontfeature{RawFeature=+liga}#1}} +\def\LLIGA{\@ifnextchar-\L@LIGA\L@@LIGA} +\def\L@LIGA-{\addfontfeature{RawFeature=-liga}} +\def\L@@LIGA#1{\addfontfeature{RawFeature=+liga}\ifx#1+\else#1\fi} + + +\def\Lhlig#1{{\addfontfeature{RawFeature=+hlig}#1}} +\def\LHLIG{\@ifnextchar-\L@HLIG\L@@HLIG} +\def\L@HLIG-{\addfontfeature{RawFeature=-hlig}} +\def\L@@HLIG#1{\addfontfeature{RawFeature=+hlig}\ifx#1+\else#1\fi} + +\def\Ldlig#1{{\addfontfeature{RawFeature=+dlig}#1}} +\def\LDLIG{\@ifnextchar-\L@DLIG\L@@DLIG} +\def\L@DLIG-{\addfontfeature{RawFeature=-dlig}} +\def\L@@DLIG#1{\addfontfeature{RawFeature=+dlig}\ifx#1+\else#1\fi} + +\endinput + |