summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/fontsize
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2021-04-18 20:20:37 +0000
committerKarl Berry <karl@freefriends.org>2021-04-18 20:20:37 +0000
commitcba1452149ffb9bb0f7422999f79ddc02e58a43e (patch)
tree2606c0021703a0f5b52b5ed6b54f56ba58d92691 /Master/texmf-dist/source/latex/fontsize
parent7390f2fd1bbcb605894627d5b9214a79be7e37f5 (diff)
fontsize (18apr21)
git-svn-id: svn://tug.org/texlive/trunk@58906 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/fontsize')
-rw-r--r--Master/texmf-dist/source/latex/fontsize/fontsize.dtx136
1 files changed, 94 insertions, 42 deletions
diff --git a/Master/texmf-dist/source/latex/fontsize/fontsize.dtx b/Master/texmf-dist/source/latex/fontsize/fontsize.dtx
index a471f4c5ca3..9c9c7fdeb54 100644
--- a/Master/texmf-dist/source/latex/fontsize/fontsize.dtx
+++ b/Master/texmf-dist/source/latex/fontsize/fontsize.dtx
@@ -56,14 +56,13 @@ This work has the LPPL maintenance status "author-maintained".
%<package>\NeedsTeXFormat{LaTeX2e}[2005/12/01]
%<package>\ProvidesPackage{fontsize}
%<*package>
- [2021/03/14 v0.8.1 'fontsize' package. Set main font sizes (Ivan Valbusa)]
+ [2021/04/18 v0.8.3 'fontsize' package. Set main font sizes (Ivan Valbusa)]
%</package>
%<*driver>
\documentclass[12pt]{ltxdoc}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
-\usepackage{fontsize}
- \changefontsize[13.7]{11.7}
+\usepackage[fontsize=12]{fontsize}
%--------------------------------------------------------
% GRAPHICS
%--------------------------------------------------------
@@ -176,6 +175,7 @@ This work has the LPPL maintenance status "author-maintained".
%
% Commands for table 1 and 2
%
+\def\tabonefontsize{\fontsize{12}{14.2}\selectfont}
\ExplSyntaxOn
\NewExpandableDocumentCommand{\getsize}{O{5}m}
{
@@ -268,7 +268,7 @@ This work has the LPPL maintenance status "author-maintained".
%</driver>
% \fi
%
-% \CheckSum{3064}
+% \CheckSum{3068}
%
% \CharacterTable
% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
@@ -287,6 +287,9 @@ This work has the LPPL maintenance status "author-maintained".
% Right brace \} Tilde \~}
%
%
+% \changes{v0.8.3}{2021/04/18}{Corrected a bug in the \cmd{parindent} option.
+% Updated documentation.}
+% \changes{v0.8.2}{2021/04/17}{New \cmd{parindent} option. Updated documentation.}
% \changes{v0.8.1}{2021/03/14}{New \cmd{sampletext} command.
% Some lengths are now defined via \sty{xfp} package. Removed \cmd{headheight} definition. Updated documentation.}
% \changes{v0.8}{2021/03/04}{Corrected a bug occuring when the line spacing is grater than \SI{163.84}{pt}.}
@@ -324,16 +327,19 @@ This work has the LPPL maintenance status "author-maintained".
% \DoNotIndex{\huge,\large,\makebox,\ProcessOptions,\renewcommand}
%
% \thispagestyle{empty}
+%
% \begin{tikzpicture}[overlay,remember picture]
-% \draw[circular drop shadow,draw=none,fill=white] (current page.center) circle (6cm) node[align=center,anchor=center] {%
+% \draw[circular drop shadow,draw=none,fill=white] (current page.center) circle (6cm)
+% node[align=center,anchor=center] {%
% Ivan Valbusa\\[1cm]
%
-%\Huge\color{gray}\bfseries \parbox{10cm}{\centering The \\{{\color{philA}\fontsize{30}{32}\textsf{fontsize}}\\ package}}\\[1cm]
+% \Huge\color{gray}\bfseries \parbox{10cm}{\centering The
+% \\{{\color{philA}\fontsize{30}{32}\textsf{fontsize}}\\ package}}\\[1cm]
% \color{black!60!Goldenrod}
%
-%\normalsize \fileversion{} -- \filedate
+% \normalsize \fileversion{} -- \filedate
%
-%};
+% };
% \end{tikzpicture}
% \clearpage\thispagestyle{empty}
% \null\vspace{1cm}
@@ -406,7 +412,9 @@ This work has the LPPL maintenance status "author-maintained".
%
% The code is an excerpt of the \sty{scrextend} and
% \sty{scrfontsizes} packages \parencite{koma}, with few minor
-% changes to make it completely independent of the KOMA-script bundle and with a couple of new features. The package is updated to version |3390 2019-11-18 17:09:35Z| of the \file{scrkernel-fonts.dtx} file.
+% changes to make it completely independent of the KOMA-script bundle and with
+% a couple of new features. The package is updated to version
+%|3390 2019-11-18 17:09:35Z| of the \file{scrkernel-fonts.dtx} file.
%
%^^A---------------------------------------------------------------------
% \section*{Caveat}
@@ -415,11 +423,13 @@ This work has the LPPL maintenance status "author-maintained".
% Although effective with any value of the font size (as long as the font
% is scalable), the package is meant for small font size changes.
% For truly optimal results you should (re)define your own \file{.clo} file.
-% In fact note that the file generated with \cmd{generateclofile}, as well as the macros redefined via \cmd{changefontsize}, are a subset of the standard \file{.clo} files.
+% In fact note that the file generated with \cmd{generateclofile},
+% as well as the macros redefined via \cmd{changefontsize},
+% are a subset of the standard \file{.clo} files.
%^^A---------------------------------------------------------------------
% \section{Usage}
%^^A---------------------------------------------------------------------
-%^^A \enlargethispage{\baselineskip}
+% \enlargethispage{\baselineskip}
%
% The package can be loaded, as usual, with:
% \begin{ttquote}
@@ -444,10 +454,32 @@ This work has the LPPL maintenance status "author-maintained".
% omit the unit as well (in which case it defaults to \texttt{pt}).
%
% \begin{footnotesize}
-% As \sty{fontsize} takes effect after the class is loaded, you should
-% set a font size class option that comes close to the font size passed
-% to \sty{fontsize}. For example,
-% if you set \opt{fontsize=12.2pt} you should load the class option \opt{12pt}.
+%
+% Note that \sty{fontsize} does not redefine some commands of the standard
+% \textit{.clo} files such as those related to the page layout and few others.
+% For example the \opt{12pt} class option redefine \cmd{Huge} (via |\let\Huge=\huge|)
+% which is not redefined by \opt{fontsize=12pt}. For these reasons, if possible, you
+% should always set a font size class option that comes close to the one
+% loaded by the package. For example with \opt{fontsize=12.2pt}
+% you should load the \opt{12pt} class option.
+%
+% \end{footnotesize}
+%
+% \optitem[1.5\meta{fontsize}]{parindent}{\meta{dimen}}
+%
+% Sets the value of \cmd{parindent}. You can use any unit recognized by
+% \TeX\ but for consistency it is preferable to use a
+% font-dependent unit such as em.
+%
+% \begin{footnotesize}
+%
+% Note that the "em" is simply an arbitrary unit that comes with a particular font.
+% The value of \cmd{parindent} given in ems depends on both the font used and
+% on how or where it is set: whether before or after
+% |\begin{document}|. For this reason, don't expect \SI{1}{em} to always be equivalent
+% to the currently specified \meta{fontsize}. If you don't like this behavior,
+% use absolute units such as pt, cm or mm.
+%
% \end{footnotesize}
%
% \optitem[fontsize]{cloname}{\meta{name}}
@@ -463,7 +495,6 @@ This work has the LPPL maintenance status "author-maintained".
%^^A \file{fontsize-std11pt.clo} or
%^^A \file{fontsize-std11pt.clo} will be used,
%
-%
% \end{optionlist*}
%
%^^A---------------------------------------------------------------------
@@ -534,7 +565,8 @@ This work has the LPPL maintenance status "author-maintained".
% \subsection{New font sizing commands}\label{sec:sizingcmd}
%^^A--------------------------------------------------------------------
%
-% The package provides three additional font sizing commands for each standard size (plus the new \cmd{HUGE} command).
+% The package provides three additional font sizing commands
+% for each standard size (plus the new \cmd{HUGE} command).
% See table \ref{tab:sizes} for details.
% \medskip
%
@@ -591,9 +623,8 @@ This work has the LPPL maintenance status "author-maintained".
% \tcmd{HUGErrr} & \HUGErrr \fshw
% \end{tabular}
% }
-%\medskip
+%\bigskip
%
-% \begin{small}
%\alert If you want these commands to work as expected, the font must be
% smoothly scalable.
% This is the case of many Type 1 and Open Type fonts such as Cochineal
@@ -633,11 +664,9 @@ This work has the LPPL maintenance status "author-maintained".
%^^A \cmd{RequirePackage}|{fix-cm}| just before \cmd{documentclass}.
%
%
-% \end{small}
-%
-%\newgeometry{top=2cm,bottom=3cm}
+%^^A\newgeometry{top=2cm,bottom=3cm}
%
-%\begin{smallrrr}
+%^^A\begin{smallrrr}
%
%\def\grayrule{\\\tabucline[0.4pt black!40 off 2pt]{-}\\[-2ex]\rowfont{\color{philA}}}
%
@@ -706,16 +735,17 @@ This work has the LPPL maintenance status "author-maintained".
% \tabrowone{HUGErrr}\\
%\end{longtabu}
%
-%\end{smallrrr}
+%^^A\end{smallrrr}
%
-%\restoregeometry
+%^^A\restoregeometry
%
%^^A---------------------------------------------------------------------
%
% \section{Some text samples}\label{sec:example}
%
%^^A--------------------------------------------------------------------
-% The following samples are obtained with the \cmd{printsamples} command (see section \ref{sec:commands}):
+% The following samples are obtained with the \cmd{printsamples}
+% command (see section \ref{sec:commands}):
%\begin{verbatim}
%\printsamples{12.6pt}{10.6pt}[normalsizerr,normalsizerrr,large,larger,largerr]
%\end{verbatim}
@@ -732,17 +762,22 @@ This work has the LPPL maintenance status "author-maintained".
%^^A---------------------------------------------------------------------
% \section{The Code}
%^^A---------------------------------------------------------------------
-%\textcolor{DarkBlue}{The parts added to the basic code of \file{scrextend} and \file{scrfontsizes} are highlighted in blue.}
+% \textcolor{DarkBlue}{The parts added to the basic code of \file{scrextend}
+% and \file{scrfontsizes} are highlighted in blue.}
%
-%\noindent All the options of the package are defined via \sty{xkeyval} \parencite{xkeyval},
+% \noindent All the options of the package are defined via
+% \sty{xkeyval} \parencite{xkeyval},
% while the \sty{xfp} package \parencite{xfp} provides the \cmd{fpeval} command
% to use instead of \cmd{dimexpr} for some size calculations.
-% Only a new package option called \opt{cloname} is defined.
+% Only two new package options, called \opt{cloname} and \opt{parindent}
+% are defined.
+%
% \baddition
% \begin{macrocode}
\@ifpackageloaded{xkeyval}{}{\RequirePackage{xkeyval}}
\@ifpackageloaded{xfp}{}{\RequirePackage{xfp}}
\DeclareOptionX{cloname}[fontsize]{\def\@fontsizefilebase{#1}}
+\DeclareOptionX{parindent}[1.5\@tempdimb]{\def\@fontsizeparindent{#1}}
% \end{macrocode}
% \eaddition
%
@@ -750,7 +785,8 @@ This work has the LPPL maintenance status "author-maintained".
%
% Here the \sty{scrextend} code begins. All the KOMA related codes have
% been removed and only a few names have been changed.
-% The value of \cmd{|@|fontsizefilebase} is set to \texttt{fontsize} instead of \texttt{scrsize}.
+% The value of \cmd{|@|fontsizefilebase} is set to \texttt{fontsize}
+% instead of \texttt{scrsize}.
% \begin{macrocode}
\DeclareOptionX{fontsize}[10]{%
\expandafter\@defaultunits\expandafter\@tempdima#1 pt\relax\@nnil
@@ -779,11 +815,15 @@ This work has the LPPL maintenance status "author-maintained".
\expandafter\AtEndOfPackage\expandafter{\@tempa}%
}
% \end{macrocode}
-% Now we can execute and process the new options defined above. As \opt{cloname} is responsible for defining \cmd{|@|fontsizefilebase} it must precede \opt{fontsize} which uses this command.
-% The \cmd{ctm@setlength} and \cmd{changefontsize} commands are simply new names, respectively, for \cmd{scr@setlength} and \cmd{changefontsizes} used in \file{scrextend.sty}.
+% Now we can execute and process the new options defined above.
+% As \opt{cloname} is responsible for defining \cmd{|@|fontsizefilebase}
+% it must precede \opt{fontsize} which uses this command.
+% The \cmd{ctm@setlength} and \cmd{changefontsize} commands
+% are simply new names, respectively, for \cmd{scr@setlength}
+% and \cmd{changefontsizes} used in \file{scrextend.sty}.
% \baddition
% \begin{macrocode}
-\ExecuteOptionsX{cloname,fontsize}
+\ExecuteOptionsX{cloname,fontsize,parindent}
\ProcessOptionsX*\relax
% \end{macrocode}
% \eaddition
@@ -993,7 +1033,8 @@ This work has the LPPL maintenance status "author-maintained".
\let\noexpand\@listi\noexpand\@listi@small
}%
% \end{macrocode}
-% {\color{black}Definition of \cmd{footnotesizer}, \cmd{footnotesizerr}, \cmd{footnotesizerrr}.\\
+% {\color{black}Definition of \cmd{footnotesizer}, \cmd{footnotesizerr},
+% \cmd{footnotesizerrr}.\\
% Scale factor: 0.01979.}
% \begin{macrocode}
\setlength{\@tempdima}{0.85313\@tempdimc}%
@@ -1024,7 +1065,8 @@ This work has the LPPL maintenance status "author-maintained".
\let\noexpand\@listi\noexpand\@listi@footnotesize
}%
% \end{macrocode}
-% {\color{black}Definition of \cmd{scriptsizer}, \cmd{scriptsizerr}, \cmd{scriptsizerrr}.\\
+% {\color{black}Definition of \cmd{scriptsizer}, \cmd{scriptsizerr},
+% \cmd{scriptsizerrr}.\\
% Scale factor: 0,0416675.}
% \begin{macrocode}
\setlength{\@tempdima}{0.7083375\@tempdimc}%
@@ -1068,7 +1110,8 @@ This work has the LPPL maintenance status "author-maintained".
{\the\@tempdima}{\the\@tempdimb}%
}%
% \end{macrocode}
-% {\color{black}Definition of \cmd{normalsizer}, \cmd{normalsizerr}, \cmd{normalsizerrr}.\\
+% {\color{black}Definition of \cmd{normalsizer}, \cmd{normalsizerr},
+% \cmd{normalsizerrr}.\\
% Scale factor: 0.05.}
% \begin{macrocode}
\setlength{\@tempdima}{1.05\@tempdimc}%
@@ -1209,7 +1252,8 @@ This work has the LPPL maintenance status "author-maintained".
{\the\@tempdima}{\the\@tempdimb}%
}%
% \end{macrocode}
-% {\color{black}Definition of \cmd{HUGE}, \cmd{HUGER}, \cmd{HUGERR}, \cmd{HUGERRR}.\\
+% {\color{black}Definition of \cmd{HUGE}, \cmd{HUGER}, \cmd{HUGERR},
+% \cmd{HUGERRR}.\\
% Scale factor: 0,149.}
% \begin{macrocode}
\setlength{\@tempdima}{3.006\@tempdimc}%
@@ -1242,13 +1286,17 @@ This work has the LPPL maintenance status "author-maintained".
\normalsize%
% \end{macrocode}
% The KOMA files do not define \cmd{parindent} and other lengths that are
-% are strictly linked to the font rather than to the dimensions of the page and the text. So first we set \cmd{parindent} to \cmd{normalsize}:
+% are strictly linked to the font rather than to the dimensions of the page
+% and the text. So we first define \cmd{parindent} which defaults to 1.5\meta{fontsize}:
% \baddition
% \begin{macrocode}
-\setlength\parindent{\@tempdimb}%
+\setlength\parindent{\@fontsizeparindent}%
% \end{macrocode}
% \eaddition
-% For the following lengths, all values are calculated proportionally to the main font. I took the \file{bk11.clo} file as a reference point. Note that the differences of the lengths in the files \file{bk*.clo} not affected by \sty{fontsize} only concern \cmd{headheight}, \cmd{headsep}, \cmd{topskip} and \cmd{footskip}.
+% For the following lengths, all values are calculated proportionally to the main font.
+% I took the \file{bk11.clo} file as a reference point. Note that the differences
+% in lengths affected by \sty{fontsize} inside the \file{bk*.clo} files only concern
+% \cmd{headheight}, \cmd{headsep}, \cmd{topskip} and \cmd{footskip}.
% \baddition
% \begin{macrocode}
\setlength\smallskipamount{\fpeval{1.090909091\@tempdimb/4}pt \@plus 1\p@ \@minus 1\p@}%
@@ -1406,7 +1454,11 @@ This work has the LPPL maintenance status "author-maintained".
%
% \paragraph{Excerpt from \file{scrfontsizes.sty}}
%
-% Here is a portion of the \sty{scrfontsizes} package. It simply provides the \cmd{generateclofile} command, without the KOMA related definitions. There are no reserved names for the \file{.clo} files. The command name is a new name for the KOMA \cmd{generatefontfile}. In fact what the command generates is a \file{.clo} file.
+% Here is a portion of the \sty{scrfontsizes} package. It simply provides the
+% \cmd{generateclofile} command, without the KOMA related definitions.
+% There are no reserved names for the \file{.clo} files. The command name is
+% a new name for the KOMA \cmd{generatefontfile}. In fact what the command
+% generates is a \file{.clo} file.
% \begin{macrocode}
\newcommand*{\generateclofile}[1]{%
\kernel@ifnextchar [{\@generatefontfile{#1}}{\@@generatefontfile{#1}}%
@@ -1975,7 +2027,7 @@ This work has the LPPL maintenance status "author-maintained".
% \end{macrocode}
% We will now define some internal commands to test the package functions.
% Since version 0.6 I have been using the \LaTeX 3 solution provided by
-% Enrico Gregorio in place of the previous macros based on
+% Enrico Gregorio in place of the old macros based on
% \sty{etoolbox} \parencite{etoolbox}.
% \baddition
% \begin{macrocode}