diff options
Diffstat (limited to 'fonts/xcharter/tex/XCharter.sty')
-rw-r--r-- | fonts/xcharter/tex/XCharter.sty | 63 |
1 files changed, 58 insertions, 5 deletions
diff --git a/fonts/xcharter/tex/XCharter.sty b/fonts/xcharter/tex/XCharter.sty index 0b90a171bb..1fe8b66ccc 100644 --- a/fonts/xcharter/tex/XCharter.sty +++ b/fonts/xcharter/tex/XCharter.sty @@ -3,8 +3,8 @@ %% \NeedsTeXFormat{LaTeX2e} -\def\fileversion{1.203} -\def\filedate{2019/11/21} +\def\fileversion{1.207} +\def\filedate{2020/06/27} \ProvidesPackage{XCharter}[\filedate\space v\fileversion] @@ -12,8 +12,11 @@ \RequirePackage[T2A,LY1,T1]{fontenc} \RequirePackage{textcomp} +\RequirePackage{scalefnt} % only for \textruble +\DeclareEncodingSubset{TS1}{XCharter-*}{0} \IfFileExists{mweights.sty}{\RequirePackage{mweights}}{} -\RequirePackage{etoolbox} +\RequirePackage{etoolbox} %etoolbox loads etex.sty +\RequirePackage{xstring,ifthen} % for \textfrac \IfFileExists{fontaxes.sty}{ \RequirePackage{fontaxes} \fa@naming@exception{figures}{{superior}{proportional}}{Sup} @@ -44,8 +47,38 @@ \DeclareTextFontCommand{\textde}{\defigures} \let\textdenominator\textde }{} -\providecommand*{\textfrac}[2]{% - \textnu{#1}\kern0em\textfractionsolidus\kern0em\textde{#2}} +\newcommand{\textfrac}[3][]{% like \textfrac[1]{7}{8} + \mbox{% + \ifthenelse{\not\equal{#1}{}}%Test for integer portion [optional #1] + {\textlf{#1}\kern.05em}{}% + \textsu{#2}% numerator + \StrRight{#2}{1}[\@digit@]% + % look for 1, 2, 3, 4, 7 + \ifcase\@digit@% 0 + \or% 1 + \or\kern.03em% 2 + \or\kern-.01em% 3 + \or%\kern-.01em% 4 + \or%\kern.01em% 5 + \or\kern.01em% 6 + \or\kern-.09em% 7 + \fi% + \kern\XCh@foresolidus\textfractionsolidus\kern\XCh@aftsolidus% + \StrLeft{#3}{1}[\@digit@]% + % look for 1, 4, 5, 7 + \ifcase\@digit@% 0 + \or\kern -.02em% 1 + \or\kern .01em% 2 + \or\kern -.02em% 3 + \or\kern -.08em% 4 + \or\kern -.01em% 5 + \or\kern -.03em% 6 + \or\kern .02em% 7 + \fi% + \textde{#3}% denominator [#3] + }% +} + \DeclareRobustCommand{\lfstyle}{% \not@math@alphabet\lfstyle\relax \fontfamily{XCharter-TLF}\selectfont } @@ -67,12 +100,16 @@ } \let\orig@footnote=\thefootnote \let\orig@makefnmark=\@makefnmark +\def\XCh@foresolidus{-.02em} +\def\XCh@aftsolidus{-.02em} %\newif\ifXCh@babel %\ifdefined\bbl@tempa \XCh@babeltrue\fi \newif\if@XCh@scosf \newif\if@XCh@srb \def\XCharter@altone{1}% default is to use 1, not I \newif\if@XCh@sups +\DeclareOptionX{foresolidus}{\gdef\XCh@foresolidus{#1}} +\DeclareOptionX{aftsolidus}{\gdef\XCh@aftsolidus{#1}} \DeclareOptionX{lf}{\edef\XCharter@figurestyle{TLF}} \DeclareOptionX{lining}{\edef\XCharter@figurestyle{TLF}} \DeclareOptionX{oldstyle}{\edef\XCharter@figurestyle{TOsF}% @@ -127,6 +164,22 @@ {\fontfamily{XCharter-TOsF}\fontshape{sc}\selectfont #1}% }\fi% use OsF in small caps +\DeclareRobustCommand{\textruble}{\rlap{\kern.03em\rule[.258em]{.1em}{.032em}}\rlap{\kern.03em\rule[.173em]{.41em}{.032em}}{\scalefont{.966}P}} + +\DeclareTextCommand{\textcircled}{TS1}[1]{% +\hmode@bgroup + \ooalign{% + \hfil \raise .32ex\hbox {\fontencoding{T1}\fontseries{m}\fontshape{sc}\fontsize{7.5}{7.5}\selectfont \lowercase{#1}}\hfil \crcr + \char 79 %\textbigcircle + }% + \egroup} + +%\DeclareTextCommand{\textcircled}{TS1}[1]{\hmode@bgroup +% \ooalign{% +% \hfil \raise .37ex\hbox {\fontencoding{T1}\fontseries{m}\fontshape{sc}\fontsize{7.2}{7.2}\selectfont \lowercase{#1}}\hfil \crcr +% \textbigcircle +% }% +% \egroup} \if@XCh@sups % \ifdefined\sufigures |