diff options
Diffstat (limited to 'macros/latex/contrib/xfakebold/doc')
-rw-r--r-- | macros/latex/contrib/xfakebold/doc/xfakebold-doc.pdf | bin | 96190 -> 98301 bytes | |||
-rw-r--r-- | macros/latex/contrib/xfakebold/doc/xfakebold-doc.tex | 48 |
2 files changed, 30 insertions, 18 deletions
diff --git a/macros/latex/contrib/xfakebold/doc/xfakebold-doc.pdf b/macros/latex/contrib/xfakebold/doc/xfakebold-doc.pdf Binary files differindex 54db165a54..8195a0f488 100644 --- a/macros/latex/contrib/xfakebold/doc/xfakebold-doc.pdf +++ b/macros/latex/contrib/xfakebold/doc/xfakebold-doc.pdf diff --git a/macros/latex/contrib/xfakebold/doc/xfakebold-doc.tex b/macros/latex/contrib/xfakebold/doc/xfakebold-doc.tex index c7ac5d15d3..b60ab25316 100644 --- a/macros/latex/contrib/xfakebold/doc/xfakebold-doc.tex +++ b/macros/latex/contrib/xfakebold/doc/xfakebold-doc.tex @@ -1,8 +1,8 @@ -% $Id: xfakebold-doc.tex 9 2020-06-22 07:46:03Z herbert $ +% $Id: xfakebold-doc.tex 11 2020-06-24 06:56:41Z herbert $ \listfiles \documentclass[english]{article} \usepackage{dejavu-otf} -\usepackage{xfp} +\usepackage{xfp,dtk-logos} \ExplSyntaxOn \let\PI\c_pi_fp \ExplSyntaxOff @@ -12,7 +12,7 @@ \usepackage{babel} \usepackage[a4paper,tmargin=1cm,bmargin=1.5cm,includeheadfoot]{geometry} \usepackage{listings} -\title{\texttt{xfakebold}, v. 0.07\\ using bold characters with\\ \texttt{pdflatex}, \texttt{lualatex} or \texttt{xelatex}} +\title{\texttt{xfakebold}, v. 0.08\\ using bold characters with\\ \texttt{pdflatex}, \texttt{lualatex} or \texttt{xelatex}} \author{Herbert Voß} \lstset{basicstyle=\ttfamily\small,language={[LaTeX]TeX},frame=lrtb} @@ -25,39 +25,50 @@ \vspace{1cm} \begin{abstract} The package fakes a vector font with outline characters by the text render of PDF. -It writes directly into the pdf output with \verb|\pdfliteral| (pdflatex ) or \verb|\pdfextension| \verb|literal| -(lualatex) or \verb|\special| (xelatex). The package defines two macros which can be used in text and in math mode. However, for the text +It writes directly into the pdf output with \verb|\pdfliteral| and uses the colorstack package \texttt{pdfrender} to allow +boldness with a pagebreak inside the bold part. +%(pdflatex ) or \verb|\pdfextension| \verb|literal| +%(lualatex) or \verb|\special| (xelatex). +The package defines two macros which can be used in text and in math mode. However, for the text mode one should use the bold version of the text font which should be available in most cases. This is different to the math mode where only some free math fonts provide a bold version. \end{abstract} \vfill -\small Thanks to: Scott Pakin, Will Robertson; Yusuke Terada; +\small Thanks to: Heiko Oberdiek; Scott Pakin, Will Robertson; Yusuke Terada; %\meaning\setBold %\meaning\unsetBold \newpage +\section{\TeX-engines} +With \XeLaTeX\ you do not really need this package, because you can use the optional argument \texttt{AutoFakeBold} from +package \texttt{fontspec} or \texttt{unicode-math} which does the same internally. For Lua\TeX\ the option \texttt{AutoFakeBold} is only supported +by \texttt{unicode-math} for math typesetting. For pdf\LaTeX\ this package can be used for text and math. + + \section{How does it work?} PDF knows different text render modes for outline fonts. +\bigskip \ifxetex\else% Only for the test run with xelatex -\def\OFF{\pdfextension literal direct { 0 Tr 0 w }\relax} +\def\OFF{\pdfrender{TextRenderingMode=Fill,LineWidth=0}} \def\Verb|#1|{\texttt{\{#1\}}} -\makebox[3cm][l]{Mode 0 \Verb| 0 Tr 0 w |} \tabular{l}\pdfextension literal direct { 0 Tr 0 w }\scalebox{10}{OTTO} OTTO\OFF\endtabular +\makebox[3cm][l]{Mode 0 \Verb| 0 Tr 0 w |} \tabular{l}\pdfrender{TextRenderingMode=Fill}\scalebox{10}{OTTO} OTTO\OFF\endtabular -\makebox[3cm][l]{Mode 1 \Verb| 1 Tr 0 w |} \tabular{l}\pdfextension literal direct { 1 Tr 0 w }\scalebox{10}{OTTO} OTTO\OFF\endtabular +\makebox[3cm][l]{Mode 1 \Verb| 1 Tr 0 w |} \tabular{l}\pdfrender{TextRenderingMode=Stroke,LineWidth=0}\scalebox{10}{OTTO} OTTO\OFF\endtabular -\makebox[3cm][l]{Mode 1 \Verb| 1 Tr 0.3 w |} \tabular{l}\pdfextension literal direct { 1 Tr 0.3 w }\scalebox{10}{OTTO} OTTO\OFF\endtabular +\makebox[3cm][l]{Mode 1 \Verb| 1 Tr 0.3 w |} \tabular{l}\pdfrender{TextRenderingMode=Stroke,LineWidth=0.3}\scalebox{10}{OTTO} OTTO\OFF\endtabular -\makebox[3cm][l]{Mode 2 \Verb| 2 Tr 0 w |} \tabular{l}\pdfextension literal direct { 2 Tr 0 w }\scalebox{10}{OTTO} OTTO\OFF\endtabular +\makebox[3cm][l]{Mode 2 \Verb| 2 Tr 0 w |} \tabular{l}\pdfrender{TextRenderingMode=FillStroke,LineWidth=0}\scalebox{10}{OTTO} OTTO\OFF\endtabular -\makebox[3cm][l]{Mode 2 \Verb| 2 Tr 0.3 w |} \tabular{l}\pdfextension literal direct { 2 Tr 0.3 w }\scalebox{10}{OTTO} OTTO\OFF\endtabular +\makebox[3cm][l]{Mode 2 \Verb| 2 Tr 0.3 w |} \tabular{l}\pdfrender{TextRenderingMode=FillStroke,LineWidth=0.3}\scalebox{10}{OTTO} OTTO\OFF\endtabular \fi +\bigskip In mode 0 the character is filled but without drawing its outline which can be seen when printing in mode 1, where the linewidth of the outline is the smallest one which the system allows. Setting the linewidth to 0.3\,bp, which is nearly the same as 0.3\,pt, the linewidth of the outline increases. In mode 2 the character is printed with filling \emph{and} @@ -101,7 +112,7 @@ the L3-syntax we define a new variable: \subsection{Default setting} \begin{lstlisting} \documentclass{article} -\usepackage{xfakebold} +\usepackage{xfakebold,xfp} \begin{document} An example: $\pi^{\pi}=\fpeval{\PI^\PI}$ and @@ -140,6 +151,7 @@ $\displaystyle\int\limits_1^{\infty}\frac1{x^2}\symup dx=1$ \begin{lstlisting} \documentclass{article} \usepackage[bold=1]{xfakebold} +\usepackage{xfp} \begin{document} An example: $\pi^{\pi}=\fpeval{\PI^\PI}$ and @@ -163,14 +175,14 @@ $\pi^{\pi}=\fpeval{\PI^\PI}$ and $\displaystyle\int\limits_1^{\infty}\frac1{x^2}\symup dx=1$ \ifxetex\special{pdf:literal direct 2 Tr 1 w }% -\else\pdfextension literal direct { 2 Tr 1 w }\relax\fi +\else\pdfrender{TextRenderingMode=FillStroke,LineWidth=1}\fi \noindent An example: $\pi^{\pi}=\fpeval{\PI^\PI}$ and $\displaystyle\int\limits_1^{\infty}\frac1{x^2}\symup dx=1$ \ifxetex\special{pdf:literal direct 0 Tr 0 w }% -\else\pdfextension literal direct { 0 Tr 0 w }\relax\fi +\else\pdfrender{TextRenderingMode=Fill,LineWidth=0}\fi \noindent An example: $\pi^{\pi}=\fpeval{\PI^\PI}$ and @@ -180,7 +192,7 @@ $\displaystyle\int\limits_1^{\infty}\frac1{x^2}\symup dx=1$ \begin{lstlisting} \documentclass{article} -\usepackage{xfakebold} +\usepackage{xfakebold,xfp} \begin{document} \setBold[0.01]\noindent An example: @@ -198,7 +210,7 @@ $\pi^{\pi}=\fpeval{\PI^\PI}$ and $\displaystyle\int\limits_1^{\infty}\frac1{x^2}\symup dx=1$ \unsetBold -\setBold\noindent% Using the deafult value +\setBold\noindent% Using the default value An example: $\pi^{\pi}=\fpeval{\PI^\PI}$ and $\displaystyle\int\limits_1^{\infty}\frac1{x^2}\symup dx=1$ @@ -222,7 +234,7 @@ $\pi^{\pi}=\fpeval{\PI^\PI}$ and $\displaystyle\int\limits_1^{\infty}\frac1{x^2}\symup dx=1$ \unsetBold -\setBold\noindent% Using the deafult value +\setBold\noindent% Using the default value An example: $\pi^{\pi}=\fpeval{\PI^\PI}$ and $\displaystyle\int\limits_1^{\infty}\frac1{x^2}\symup dx=1$ |