summaryrefslogtreecommitdiff
path: root/fonts/fbb/tex/fbb.sty
diff options
context:
space:
mode:
Diffstat (limited to 'fonts/fbb/tex/fbb.sty')
-rw-r--r--fonts/fbb/tex/fbb.sty46
1 files changed, 44 insertions, 2 deletions
diff --git a/fonts/fbb/tex/fbb.sty b/fonts/fbb/tex/fbb.sty
index 5513961fad..5dbadf263a 100644
--- a/fonts/fbb/tex/fbb.sty
+++ b/fonts/fbb/tex/fbb.sty
@@ -2,8 +2,8 @@
%%
\NeedsTeXFormat{LaTeX2e}
-\def\fileversion{1.13}
-\def\filedate{2017/06/24}
+\def\fileversion{1.15}
+\def\filedate{2020/06/27}
\ProvidesPackage{fbb}[\filedate\space v\fileversion]
\message{`fbb' v\fileversion, \filedate\space Text macros for fbb, a Bembo-like font family (msharpe)}
@@ -12,6 +12,7 @@
\RequirePackage{textcomp}
\RequirePackage{ifetex}
\ifetex\RequirePackage{etoolbox}\fi %etoolbox loads etex.sty
+\RequirePackage{xstring,ifthen} % for \textfrac
\IfFileExists{mweights.sty}{\RequirePackage{mweights}}{}
\IfFileExists{fontaxes.sty}{
\RequirePackage{fontaxes}
@@ -27,8 +28,43 @@
\fontfigurestyle{inferior}\selectfont}
\DeclareTextFontCommand{\textin}{\infigures}
\let\textinferior\textin
+% \providecommand*{\textfrac}[3][\fbb@raisefrac]{%
+% \leavevmode\raise ##1 \hbox{\textsu{##2}\kern \fbb@foresolidus \textfractionsolidus\kern \fbb@aftsolidus \textin{##3}}}
% \def\@makefnmark{\hbox{\textsu{\@thefnmark}}}
}{}
+\def\textde#1{\leavevmode\raise .188em \hbox{\textin{#1}}} % aligned with baseline
+\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-.02em% 3
+ \or\kern-.01em% 4
+ \or\kern.01em% 5
+ \or\kern.02em% 6
+ \or\kern-.09em% 7
+ \fi%
+ \kern\fbb@foresolidus\textfractionsolidus\kern\fbb@aftsolidus%
+ \StrLeft{#3}{1}[\@digit@]%
+ % look for 1, 4, 5, 7
+ \ifcase\@digit@% 0
+ \or\kern -.02em% 1
+ \or\kern .01em% 2
+ \or% 3
+ \or\kern -.08em% 4
+ \or\kern -.01em% 5
+ \or\kern -.03em% 6
+ \or\kern .04em% 7
+ \fi%
+ \textde{#3}% denominator [#3]
+ }%
+}
+
\newcommand*{\fbb@scale}{1}
\IfFileExists{xkeyval.sty}{
\RequirePackage{xkeyval}
@@ -54,6 +90,12 @@
\newif\if@fbb@sups
\newif\if@fbb@scosf
\def\fbb@altP{} % should be empty or P
+\def\fbb@foresolidus{.04em}
+\def\fbb@aftsolidus{0em}
+\def\fbb@raisefrac{.111em}
+\DeclareOptionX{foresolidus}{\gdef\fbb@foresolidus{#1}}
+\DeclareOptionX{aftsolidus}{\gdef\fbb@aftsolidus{#1}}
+\DeclareOptionX{raisefrac}{\gdef\fbb@raisefrac{#1}}
\DeclareOptionX{altP}{\xdef\fbb@altP{P}}
\DeclareOptionX{lining}{\edef\fbb@figurestyle{LF}}
\DeclareOptionX{oldstyle}{\useosf}