From 0a9abfb9d9e5a3eb281a2a8430134d04c446f7d1 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Wed, 28 Mar 2018 21:05:34 +0000 Subject: plex-otf (28mar18) git-svn-id: svn://tug.org/texlive/trunk@47157 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/tex/latex/plex-otf/plex-otf.sty | 154 +++++++++++++++++++--- 1 file changed, 139 insertions(+), 15 deletions(-) (limited to 'Master/texmf-dist/tex') diff --git a/Master/texmf-dist/tex/latex/plex-otf/plex-otf.sty b/Master/texmf-dist/tex/latex/plex-otf/plex-otf.sty index aac581cc7be..01926d212a8 100644 --- a/Master/texmf-dist/tex/latex/plex-otf/plex-otf.sty +++ b/Master/texmf-dist/tex/latex/plex-otf/plex-otf.sty @@ -1,4 +1,4 @@ -%% $Id: plex-otf.sty 662 2017-11-28 20:56:40Z herbert $ +%% $Id: plex-otf.sty 739 2018-03-06 19:23:26Z herbert $ %% %% This file is distributed under the terms of the LaTeX Project Public %% License from CTAN archives in directory macros/latex/base/lppl.txt. @@ -7,7 +7,7 @@ % Copyright 2017 Herbert Voss hvoss@tug.org %% \ProvidesPackage{plex-otf}[% - 2017/11/29 v. 0.05 (Herbert Voss) Supports plex OpenType for lualatex/xelatex.] + 2018/03/28 v. 0.07 (Herbert Voss) Supports plex OpenType for lualatex/xelatex.] % \RequirePackage{ifxetex,ifluatex,xkeyval,textcomp} \RequirePackage{fontspec} @@ -31,10 +31,18 @@ % SemiBold : Bold, BoldItalic \def\Plex@RMstyle{} \def\Plex@SSstyle{} +\def\Plex@SSconstyle{} \def\Plex@TTstyle{} \DeclareOptionX{RMstyle}{\def\Plex@RMstyle{#1}} \DeclareOptionX{SSstyle}{\def\Plex@SSstyle{#1}} +\DeclareOptionX{SSconstyle}{\def\Plex@SSconstyle{#1}} \DeclareOptionX{TTstyle}{\def\Plex@TTstyle{#1}} +\DeclareOptionX{Style}{% + \def\Plex@RMstyle{#1}% + \def\Plex@SSstyle{#1}% + \def\Plex@SSConstyle{#1}% + \def\Plex@TTstyle{#1}% +} % \def\PlexRM@SCfont{}% {texgyretermes} \DeclareOptionX{RMSCfont}{\renewcommand*\PlexRM@SCfont{#1}} @@ -43,11 +51,13 @@ \providecommand\PlexRM@features{}% Roman \providecommand\PlexSS@features{}% SansSerif +\providecommand\PlexSScon@features{}% SansSerif Condensed \providecommand\PlexTT@features{}% Scale=MatchLowercase,FakeStretch=0.9}% Typewriter \providecommand\Plex@DefaultFeatures{} % \DeclareOptionX{RM}{\renewcommand*\PlexRM@features{#1}} \DeclareOptionX{SS}{\renewcommand*\PlexSS@features{#1}} +\DeclareOptionX{SScon}{\renewcommand*\PlexSScon@features{#1}} \DeclareOptionX{TT}{\renewcommand*\PlexTT@features{#1}} \DeclareOptionX{DefaultFeatures}{\def\Plex@DefaultFeatures{#1}} @@ -77,6 +87,9 @@ \edef\Plex@SSboldstyle{\Plex@boldstyle} \edef\Plex@SSstyle{\Plex@style} \typeout{SS: \Plex@SSstyle; \Plex@SSboldstyle}% +\edef\Plex@SSconboldstyle{\Plex@boldstyle} +\edef\Plex@SSconstyle{\Plex@style} +\typeout{SS: \Plex@SSconstyle; \Plex@SSconboldstyle}% \def\Plex@style{} \def\Plex@boldstyle{Bold} @@ -241,6 +254,66 @@ BoldFont = *-SemiBold, BoldItalicFont = *-SemiBoldItalic, ] +% +% Sans Serif COndensed +% + \edef\Plex@@Weight{\ifx\Plex@SSconstyle\@empty Regular\else\Plex@SSconstyle\fi} + \newfontfamily\sffamilyCon{IBMPlexSansCondensed}[% main sans condensed + Extension = .otf, + UprightFont= *-\Plex@@Weight, + BoldFont = *-\Plex@SSconboldstyle, + ItalicFont = *-\Plex@SSconstyle Italic, + BoldItalicFont = *-\Plex@SSconboldstyle Italic, + SlantedFont = *-\Plex@SSconstyle Italic, +% Scale = 0.92, + \PlexSScon@features, + ] +% + \newfontfamily\slshapeSScon{IBMPlexSansCondensed}[% + Extension = .otf, + FakeSlant = 0.2, + UprightFont = *-\Plex@@Weight, + BoldFont = *-\Plex@SSconboldstyle, + \PlexSScon@features, + ] +% + \newfontfamily\PlexExtraLightSScon{IBMPlexSansCondensed}[% + \PlexSScon@features, + Extension = .otf, + UprightFont= *-ExtraLight, + ItalicFont = *-ExtraLightItalic, + ] + \newfontfamily\PlexLightSScon{IBMPlexSansCondensed}[% + \PlexSScon@features, + Extension = .otf, + UprightFont= *-Light, + ItalicFont = *-LightItalic, + ] + \newfontfamily\PlexThinSScon{IBMPlexSansCondensed}[% + \PlexSScon@features, + Extension = .otf, + UprightFont= *-Thin, + ItalicFont = *-ThinItalic, + ] + \newfontfamily\PlexMediumSScon{IBMPlexSansCondensed}[% + \PlexSScon@features, + Extension = .otf, + UprightFont= *-Medium, + ItalicFont = *-MediumItalic, + ] + \newfontfamily\PlexTextSScon{IBMPlexSansCondensed}[% + \PlexSScon@features, + Extension = .otf, + UprightFont= *-Text, + ItalicFont = *-TextItalic, + ] + \newfontfamily\PlexSemiBoldSScon{IBMPlexSansCondensed}[% + \PlexRM@features, + Extension = .otf, + UprightFont= *-\Plex@@Weight, + BoldFont = *-SemiBold, + BoldItalicFont = *-SemiBoldItalic, + ] \fi % \ifPlex@mono @@ -311,7 +384,7 @@ BoldFont = * \Plex@RMboldstyle, ItalicFont = * \Plex@RMstyle Italic, BoldItalicFont = * \Plex@RMboldstyle Italic, - SlantedFont = *-\Plex@RMstyle Italic, + SlantedFont = * \Plex@RMstyle Italic, % Scale = 0.92, \PlexRM@features, ] @@ -362,7 +435,7 @@ BoldFont = * \Plex@SSboldstyle, ItalicFont = * \Plex@SSstyle Italic, BoldItalicFont = * \Plex@SSboldstyle Italic, - SlantedFont = *-\Plex@SSstyle Italic, + SlantedFont = * \Plex@SSstyle Italic, % Scale = 0.92, \PlexSS@features, ] @@ -373,8 +446,8 @@ \PlexSS@features, ] \newfontfamily\PlexExtraLightSS{IBM Plex Sans}[% - UprightFont= *-ExtraLight, - ItalicFont = *-ExtraLightItalic, + UprightFont= * ExtraLight, + ItalicFont = * ExtraLightItalic, \PlexSS@features, ] \newfontfamily\PlexLightSS{IBM Plex Sans}[% @@ -403,6 +476,57 @@ BoldItalicFont = * SemiBoldItalic, \PlexRM@features, ] +%% +%% Snas Serif Condensed +%% + \edef\Plex@@Weight{\ifx\Plex@SSconstyle\@empty\else\Plex@SSconstyle\fi} +% + \newfontfamily\sffamilyCon{IBM Plex Sans Condensed}[% + UprightFont= * \Plex@@Weight, + BoldFont = * \Plex@SSconboldstyle, + ItalicFont = * \Plex@SSconstyle Italic, + BoldItalicFont = * \Plex@SSconboldstyle Italic, + SlantedFont = * \Plex@SSconstyle Italic, +% Scale = 0.92, + \PlexSScon@features, + ] + \newfontfamily\slshapeSScon{IBMPlexSans}[% + FakeSlant = 0.2, + UprightFont = * \Plex@@Weight, + BoldFont = * \Plex@SSconboldstyle, + \PlexSScon@features, + ] + \newfontfamily\PlexExtraLightSScon{IBM Plex Sans}[% + UprightFont= * ExtraLight, + ItalicFont = * ExtraLightItalic, + \PlexSScon@features, + ] + \newfontfamily\PlexLightSScon{IBM Plex Sans}[% + UprightFont= * Light, + ItalicFont = * LightItalic, + \PlexSScon@features, + ] + \newfontfamily\PlexThinSScon{IBM Plex Sans}[% + UprightFont= * Thin, + ItalicFont = * ThinItalic, + \PlexSScon@features, + ] + \newfontfamily\PlexMediumSScon{IBM Plex Sans}[% + UprightFont= * Medium, + ItalicFont = * MediumItalic, + \PlexSScon@features, + ] + \newfontfamily\PlexTextSScon{IBM Plex Sans}[% + UprightFont= * Text, + ItalicFont = * TextItalic, + \PlexSScon@features, + ] + \newfontfamily\PlexSemiBoldSScon{IBM Plex Sans}[% + UprightFont= * \Plex@@Weight, + BoldFont = * SemiBold, + BoldItalicFont = * SemiBoldItalic, + \PlexRM@features, + ] \fi % \ifPlex@mono @@ -424,8 +548,8 @@ \PlexTT@features, ] \newfontfamily\PlexExtraLightTT{IBM Plex Mono}[% - UprightFont= *-ExtraLight, - ItalicFont = *-ExtraLightItalic, + UprightFont= * ExtraLight, + ItalicFont = * ExtraLightItalic, \PlexTT@features, ] \newfontfamily\PlexLightTT{IBM Plex Mono}[% @@ -462,14 +586,14 @@ \DeclareRobustCommand\slshape {\not@math@alphabet\slshape\relax \ifx\f@family\rmdefault\slshapeRM\else\ifx\f@family\sfdefault\slshapeSS\else\slshapeTT\fi\fi} - %Define some special Characters -\providecommand\IBM[1][0]{\ifcase#1 - \symbol{"EBE1}\or - \symbol{"EBE3}\or - \textsf{\symbol{"EBE4}}\or - \textsf{\symbol{"EBE6}}\or - \symbol{"EBE7}\fi} +\providecommand\IBM{%[1][0]{\ifcase#1 +% \symbol{"EBE1}\or +% \symbol{"EBE3}\or +% \textsf{\symbol{"EBE4}}\or +% \textsf{\symbol{"EBE6}}\or + \symbol{"EBE7}%\fi +} \providecommand\CE{\symbol{"ECE0}} \providecommand\FCC{\symbol{"EFCC}} \providecommand\upleftarrow{\symbol{"21B0}} -- cgit v1.2.3