diff options
-rw-r--r-- | Master/texmf-dist/doc/xetex/font-change-xetex/README.txt | 24 | ||||
-rw-r--r-- | Master/texmf-dist/doc/xetex/font-change-xetex/font-change-xetex.pdf | bin | 0 -> 574273 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/xetex/font-change-xetex/font-change-xetex.tex | 1119 | ||||
-rw-r--r-- | Master/texmf-dist/tex/xetex/font-change-xetex/font-change-xetex.tex | 1135 | ||||
-rwxr-xr-x | Master/tlpkg/bin/tlpkg-ctan-check | 2 | ||||
-rwxr-xr-x | Master/tlpkg/libexec/ctan2tds | 10 | ||||
-rw-r--r-- | Master/tlpkg/tlpsrc/collection-xetex.tlpsrc | 1 | ||||
-rw-r--r-- | Master/tlpkg/tlpsrc/font-change-xetex.tlpsrc | 0 |
8 files changed, 2288 insertions, 3 deletions
diff --git a/Master/texmf-dist/doc/xetex/font-change-xetex/README.txt b/Master/texmf-dist/doc/xetex/font-change-xetex/README.txt new file mode 100644 index 00000000000..ef11ce8dae6 --- /dev/null +++ b/Master/texmf-dist/doc/xetex/font-change-xetex/README.txt @@ -0,0 +1,24 @@ +This is version 2016.1 of the package "font-change-xetex". +The package consists of macros that can be used to typeset XeTeX documents +using any OpenType or TrueType font installed on the computer system. +The macros allow the user to change the text mode fonts and some math mode fonts. +For any declared font family, various font style, weight, and size variants like +bold, italics, small caps, etc. are available through standard and custom TeX control statements. +Using the optional argument of the macros, the available XeTeX font features and OpenType tags can be accessed. +Other features of the package include activating and deactivating hanging punctuation, and support for special Unicode characters. +For more information, please refer to the documentation (font-change-xetex.pdf). + +***User's comments and suggestions are welcomed.*** + +=========== Licence / License =========== + + +This work is licensed under the Creative Commons Attribution-ShareAlike 4.0 International License +on April 07, 2016. You are free to Share (to copy, distribute and transmit the work) +and to Remix (to adapt the work) provided you follow the Attribution and Share Alike +guidelines of the licence. For the full licence text, please visit: http://creativecommons.org/licenses/by-sa/4.0/. + + + +Amit Raj Dhawan amitrajdhawan@gmail.com + (Author) diff --git a/Master/texmf-dist/doc/xetex/font-change-xetex/font-change-xetex.pdf b/Master/texmf-dist/doc/xetex/font-change-xetex/font-change-xetex.pdf Binary files differnew file mode 100644 index 00000000000..cdd27703d6e --- /dev/null +++ b/Master/texmf-dist/doc/xetex/font-change-xetex/font-change-xetex.pdf diff --git a/Master/texmf-dist/doc/xetex/font-change-xetex/font-change-xetex.tex b/Master/texmf-dist/doc/xetex/font-change-xetex/font-change-xetex.tex new file mode 100644 index 00000000000..e09fc2611ca --- /dev/null +++ b/Master/texmf-dist/doc/xetex/font-change-xetex/font-change-xetex.tex @@ -0,0 +1,1119 @@ +% The author of this work is Amit Raj Dhawan. +% This work is licensed under the +% Creative Commons Attribution-ShareAlike 4.0 International License +% on April 07, 2016. For details visit: +% http://creativecommons.org/licenses/by-sa/4.0/. +% +%%%%%%%%% Fonts %%%%%%%%%% +\font\webomints=WebOMintsGd at40pt +\font\titlefont=artemisiarg8a at36pt + +%%%%%%%%%% Packages %%%%%%%%%% +%%% Eplain +\input eplain % Add Eplain before AmSTeX +\beginpackages +\usepackage{url} +\usepackage{color} +\usepackage{graphicx} +\endpackages +\enablehyperlinks[dvipdfm] % Enables hyperlinks using Eplain +%\hlopts{colormodel=named,color=Black} % Produces links in black color +%% Color +\definecolor{brown}{rgb}{.7,.2,.2}% +\definecolor{grey}{rgb}{0.5,0.5,0.5}% + + +%%% AmSTeX +\input amstex +\UseAMSsymbols + +\catcode`@=12 + + + + +%%%%%%%%%% Page characteristics %%%%%%%%%% +\magnification=1120 +\parindent=20pt +\parfillskip=\parindent plus1fil +\everypar{\looseness=-1} +\headline{} \footline{} +\vsize=25truecm +\hoffset-2mm +\voffset-3mm +\settabs 20 \columns +\exhyphenpenalty10000 +\hyphenpenalty200 + + + +%%%%%%%%%% Definitions %%%%%%%%%% +\def\bs{\bigskip}% +\def\ms{\medskip}% +\def\sk{\smallskip}% +\def\cl{\centerline}% +\def\ii{\noindent}% +\def\pic#1#2#3{\bigskip\cl{\epsfxsize#1\epsfbox{#2.eps}}\par\cl{\eightrm #3}}% +\def\amstex{{\amstexfont A\kern-.1667em\lower.5ex\hbox{M}\kern-.125em S}-\capstex}% +\def\xetex{X\lower0.5ex\hbox{\kern-0.11em\reflectbox{E}}\kern-0.165em\TeX}% +\def\latex{L\setbox0=\hbox{\sc A}\kern-0.5766\wd0\raise0.41ex\hbox{\sc A}\setbox1=\hbox{T}\kern-.177\wd1\TeX}% +\def\xelatex{X\lower0.5ex\hbox{\kern-0.11em\reflectbox{E}}\kern-0.13em\latex}% +\def\capstex{{\caps t\kern-.122em\lower.38ex\hbox{e}\kern-.11em x}}% +\def\capslatex{{\caps l\setbox0=\hbox{\sevencaps a}\kern-0.5888\wd0{\raise0.33ex\hbox{\sevencaps a}}\setbox1=\hbox{t}\kern-.2\wd1\capstex}}% +\def\capsxetex{{\caps x\lower0.38ex\hbox{\kern-0.1em\reflectbox{e}}\kern-0.13em\capstex}}% +\def\capsxelatex{{\caps x\lower0.38ex\hbox{\kern-0.1em\reflectbox{e}}\kern-0.122em\capslatex}}% +\def\footnote#1{\numberedfootnote{\hskip-7mm\hbox to 20cm{\vtop{\hangindent\parindent\hangafter1\eightrm\fontss #1}}}}% +\def\quote#1{\sk\leftskip10mm{\sl\noindent #1}\sk \leftskip0mm\rightskip0mm}% +\def\emdash{\hbox{\kern0.15em---\kern0.15em}\relax}% +\def\endash{\hbox{\kern0.15em--\kern0.15em}\relax}% +\def\code#1{{\color{brown}\tt #1}}% +\def\bsl{\char'134}% +\def\inbox#1{\hbox{\vbox{\hrule\hbox{\strut\vrule\hbox{\kern0.3em #1\kern0.3em}\strut\vrule}\hrule}}}% +\def\coderesult#1{\vbox{\hrule\hbox{\vrule\hbox{\leftskip7mm\rightskip7mm \vbox{\vskip0.5\baselineskip \parindent=0pt{#1}\vskip0.5\baselineskip}\vrule}}\hrule}}% + + + + +\hyphenpenalty200% +\exhyphenpenalty0% +\hfuzz=3pt% + +%%%%%%%%%% Chapter, Section %%%%%%%%%% +\newcount\sectionno\sectionno=0 % For sections +\newcount\subsectionno\subsectionno=0 % For subsections +\newcount\subsubsectionno\subsubsectionno=0 % For subsubsections +\definecolor{sectioncolor}{rgb}{0.22,0.38,0.62} + + +\def\section#1#2{% +\subsectionno=0% +\subsubsectionno=0% +\global\advance\sectionno by 1 +{\special{pdf: outline 1 << /Title (#2)/F 0 /Dest [@thispage /FitH @ypos ] >> }} +\bigskip\bigskip\medskip\goodbreak +\noindent{\textcolor{sectioncolor}{\sanssixteenbf\fontss \the\sectionno\ \; #1}} +{\definexref{#2}{\number\sectionno\ #2}{}} +{\writetocentry{section}{\refs{#2}}} +\nopagebreak\medskip\nopagebreak\noindent} + +\def\subsection#1{% +\global\advance\subsectionno by 1 +{\special{pdf: outline 2 << /Title (#1)/F 0 /Dest [@thispage /FitH @ypos ] >> }} +\bigskip\medskip\goodbreak +{\definexref{#1}{\number\sectionno.\number\subsectionno\ #1}{}} +{\writetocentry{subsection}{\kern5mm\refs{#1}}} +{\noindent{\textcolor{sectioncolor}{\sansfourteenbf\fontss\the\sectionno.\the\subsectionno\ \; #1}}} +\nopagebreak\medskip\nopagebreak\noindent} + +\def\subsubsection#1{% +\global\advance\subsubsectionno by 1 +{\special{pdf: outline 2 << /Title (#1)/F 0 /Dest [@thispage /FitH @ypos ] >> }} +\bigskip\medskip\goodbreak +{{\definexref{#1}{\number\sectionno.\number\subsectionno.\number\subsubsectionno\ #1}{}} +{\writetocentry{subsubsection}{\kern5mm\refs{#1}}} +\noindent{\textcolor{sectioncolor}{\sanstwelvebf\fontss\the\sectionno.\the\subsectionno.\the\subsubsectionno\ \; #1}}} +\nopagebreak\medskip\nopagebreak\noindent} + + +\input font_kp + +%\input multiple-z-font-change-xetex +\input font-change-xetex +\def\fontss{\parindent=2em% +\baselineskip=2.9ex% +\spaceskip=0.30001em plus0.13em minus0.13em}% + +\mysanzfont{Calibri}{11}{} +\myzfont{Warnock Pro}{10}{} +\fontss \hangpun \frenchspacing +\font\tt="Consolas" at 8.7pt% +\font\eighttt="Consolas" at 7pt% +%\mymathfont{Warnock Pro}{10} + + + + + + +%%%%%%%%%% Cover %%%%%%%%%% +{\special{pdf: outline 1 << /Title (Cover)/F 0 /Dest [@thispage /FitH @ypos ] >> }} +{\centerline{{\color{brown}\webomints\char'160}\hskip8mm\titlefont\color{sectioncolor} font-change-xetex\hskip8mm{\color{brown}\webomints\char'161}}\bs +\centerline{{\color{brown}\webomints\char'125\char'126}} +\bs +\centerline{Version \ 2016.1} +\bs\bs +{\color{sectioncolor}\fourteenbf\fontss\centerline{Macros to use OpenType and TrueType fonts}\kern3mm +\centerline{with \XeTeX}} + +\vskip2cm +\centerline{\color{brown}\webomints \char'063} +\vskip2cm +\centerline{\twelvebf\fontss Amit Raj Dhawan}\sk +\centerline{\href{mailto:amitrajdhawan@gmail.com}{\sansrm amitrajdhawan\@gmail.com}}\sk +\centerline{\rm April 07, 2016} + +\vskip7cm + +% Licence +\hrule\kern1pt\hrule\sk +\ii{\includegraphics[scale=0.5]{creative_commons_sa-il_4.pdf}} +\vskip-7mm +\vbox{\leftskip2.5cm\parindent=0pt\eightrm\fontss\ii This work is licensed under the Creative Commons Attribution-ShareAlike 4.0 International License. You are free to {\eightitbf Share\/} (to copy, distribute and transmit the work) and to {\eightitbf Remix\/} (to adapt the work) provided you follow the {\eightitbf Attribution\/} and {\eightitbf Share Alike\/} guidelines of the licence. For the full licence text, please visit: +\href{http://creativecommons.org/licenses/by-sa/4.0/}{\eightrm http://creativecommons.org/licenses/by-sa/4.0/}.}\leftskip0cm +\sk\hrule\kern1pt\hrule + +\BlackBoxes + + +\newpage + +\cl{\sanstwentycapsbf\fontss {\color{sectioncolor}Table of Contents}}\bs\ms +{\special{pdf: outline 1 << /Title (Contents)/Dest [@thispage /FitH @ypos ] >> }}% + +\readtocfile + +\pageno=-1 +\footline{\cl{\folio}} + + +\newpage +\pageno=1 +\headline{\textcolor{grey}{\capsxetex\ macro {\tt font-change-xetex}} \hfill\folio} +\footline{} + +\section{Introduction}{Introduction}\capsxetex\ is a typesetting system based on \capstex~\cite{xetex_package} that supports Unicode~\cite{unicode_webpage} and modern fonts like True~Type fonts~({\caps ttf}), Open Type fonts~({\caps otf}), and Apple Advanced Typography ({\caps aat}) fonts~\cite{phinney_2001_ttf_otf}. The possibility of using almost any kind of font format---either installed as a system font or just placed any \capstex\ working-directory---has significantly improved the utility of \capstex. Moreover, the incorporation of Unicode encoding in \capstex\ documents is a progressive step as non-Latin scripts can now easily exploit the power of \capstex. Variants of \capstex\ like \capsxetex, \capsxelatex, and Lua\capstex\ have made this~feasible. + + + +This document will describe the features of the package \code{font-change-xetex}. The package provides a simple way to use system-installed TrueType or OpenType fonts with \capsxetex. The package \code{fontspec}~\cite{fontspec_package}, which works with \capsxelatex\ and Lua\capstex, is a very good tool for using TrueType and OpenType fonts, but to my knowledge, a similar package has not been proposed for \capsxetex. Following the ``plain \capstex'' way of working, the macro package \code{font-change-xetex} allows users to employ {\it external} fonts with~\capsxetex. The macro has been designed to change the text fonts in \capsxetex\ documents but one definition of the macro can be used to change some math mode fonts. The text fonts called by \code{font-change-xetex} can be used with the math fonts declared by another package called \code{font-change}~\cite{font-change_package} to obtain harmonious text and math font~combinations. + +I have been using \code{font-change-xetex} to typeset documents in English and Hindi from the year 2008, and from 2010, the macro has remained almost unchanged. The macro has worked with all the versions of \capsxetex\ so far, and it works with most font families installed on a computer system. Rarely, due to some font file issues, these fonts might not work properly but this is not a problem of the macro as~such. + +The macro \code{font-change-xetex} has been tested with the {\tt xdvipdfmx} driver. Please pay attention to driver-related~issues. + + +\section{Using font-change-xetex}{Using font-change-xetex}The package \code{font-change-xetex} can be downloaded from \href{http://www.ctan.org}{\caps ctan} and it will be included in the future versions of MiK\TeX\ and \TeX Live. If \code{font-change-xetex} is installed in the \capstex\ installation on your system, then it can be invoked~by: +\ms +\code{\bsl input font-change-xetex} +\ms +\ii If the package is not installed in the \capstex\ directory, the package file {\tt font-change-xetex.tex} can be saved on the computer system, say in {\tt C:/}, and can be invoked by typing the following in the {\tt .tex} source~file: +\ms +\code{\bsl input C:/font-change-xetex.tex} +\bs +Once the package has been invoked, the commands included in it can be used. The following sections will discuss the font-changing commands of \code{font-change-xetex}. + + +\section{Text font selection}{Text font selection}The main font~(font family) of a \capsxetex\ document can be changed by using the following definition: +\ms +\ii\inbox{\code{\bsl myzfont\{\textcolor{blue}{\sl font name}\}\{\textcolor{blue}{\sl font size in points}\}\{\textcolor{blue}{\sl optional font features}\}}} +\sk +\ii where \textcolor{blue}{\sl font name} is the name of the installed font~family (e.g., Warnock Pro, Minion Pro, Linux Libertine, etc.) or an individual font file (e.g., WarnockPro-Regular, WarnockPro-Semibold, etc.), \textcolor{blue}{\sl font size in points} is the size of the font in points stated as a positive integer without {\tt pt} at the end~(e.g., 9, 10, 31, etc.), and \textcolor{blue}{\sl optional font features} are declared to use or suppress advanced font features like ligatures, proportional figures, etc.~(some of them will be discussed in the following section). + + +The definition \code{\bsl myzfont} can be declared anywhere in the document. It is recommended to declare it only once somewhere at the beginning of the \capstex\ document---this implements a regular change of fonts without exhausting \capstex's memory.\footnote{\ \; The definition \textcolor{brown}{\eighttt \bsl myfont} provides a way to use multiple font families within the same document but only at the declared size. Though all font style and weight variants like {\eightbf boldface}, {\eightit italics}, {\eightsl slanted}, {\eightitbf italic boldface}, {\eightslbf slanted boldface}, {\eightcaps Caps}, {\eightcapsbf Caps in Bold}, {\eightcapssl Slanted Caps}, and {\eightcapsslbf Slanted Caps in Boldface} will be available. Still, if someone wants to use \textcolor{brown}{\eighttt \bsl myzfont} multiple times in a document, please send me an email. I have not included the variant of \textcolor{brown}{\eighttt font-change-xetex} that allows multiple declarations of \textcolor{brown}{\eighttt \bsl myzfont} and \textcolor{brown}{\eighttt \bsl mysanzfont} because the present variant works better with hanging punctuation.} Once a font~family is declared, the font~weight and style commands like {\bf boldface}~(\code{\bsl bf}), {\it italics}~(\code{\bsl it}), {\sl slanted}~(\code{\bsl sl}), {\itbf italic boldface}~(\code{\bsl itbf}), {\slbf slanted boldface}~(\code{\bsl slbf}), {\caps Caps}~({\code{\bsl caps}), {\capsbf Caps in Bold}~(\code{\bsl capsbf}), {\capssl Slanted Caps}~(\code{\bsl capssl}), and {\capsslbf Slanted Caps in Boldface}~(\code{\bsl capsslbf}) automatically use the corresponding fonts. If the declared font~family does~not have all features, then the features of the preceding font are used. \footnote{\ \; This works even with custom definitions like \textcolor{brown}{\eighttt \bsl itbf}, \textcolor{brown}{\eighttt \bsl caps}, etc. if a macro from \textcolor{brown}{\eighttt font-change} is declared before \textcolor{brown}{\eighttt font-change-xetex}.} + +With respect to the base font size declared in \code{pt}, for each font weight and style, the definition \code{\bsl myzfont} includes several pre-defined relative font~sizes of 5, 6, 7, 8, 9, 10, 11, 12, 14, 16, 18, and 20\,pt. That is, if we declare a base font size of 10\,pt by \code{\bsl myzfont\{Minion Pro\}\{10\}\{\}}, we will obtain the sizes of 5, 6, 7, 8, 9, 10, 11, 12, 14, 16, 18, and 20\,pts, and if we declare a base font size of 20\,pt by \code{\bsl myzfont\{Minion Pro\}\{20\}\{\}}, we get pre-defined sizes of 10, 12, 14, 16, 18, 20, 22, 24, 28, 32, and 40\,pts. + +\code{font-change-xetex} also provides the choice of a sans~serif font through the~definition: +\ms +\ii\inbox{\code{\bsl mysanzfont\{\textcolor{blue}{\sl font name}\}\{\textcolor{blue}{\sl font size in points}\}\{\textcolor{blue}{\sl optional font features}\}}} +\sk +\ii This definition provides the same font styles, weights, and sizes as \code{\bsl myzfont}. The font~commands are also the same but each command has a prefix \code{sans} like \code{\bsl sansrm}, \code{\bsl sansit}, \code{\bsl sanstwelvebf}, etc. The next section will mention all the included~commands. + +To change the font locally, \code{font-change-xetex} provides the following~macro: +\ms +\ii\inbox{\code{\bsl myfont\{\textcolor{blue}{\sl font name}\}\{\textcolor{blue}{\sl font size in points}\}\{\textcolor{blue}{\sl optional font features}\}}} +\sk +\ii The above command invokes the declared font (or font~family) at the mentioned size with the same font styles and weights as provided by \code{\bsl myzfont}. This command does not provide size variants, thereby easing the burden on \capstex's font~memory. + + + + + + +\subsection{Examples of use}The following definition selects Warnock Pro as the main document font~family at 10\,pt. The \capstex\ code is given in \code{brown} on the left and the corresponding results are given on the~right. + +\ms +\ii{\code{\bsl myzfont\{Warnock Pro\}\{10\}\{\}} +\baselineskip21pt +\+\code{\bsl rm \ This is regular} &&&&&&&&&& \rm This is regular\cr +\+\code{\bsl bf \ This is bold} &&&&&&&&&& \bf This is bold\cr +\+\code{\bsl it \ This is italic} &&&&&&&&&& \it This is italic\cr +\+\code{\bsl sl \ This is slanted} &&&&&&&&&& \sl This is slanted\cr +\+\code{\bsl itbf \ This is italic bold} &&&&&&&&&& \itbf This is italic bold\cr +\+\code{\bsl slbf \ This is slanted bold} &&&&&&&&&& \slbf This is slanted bold\cr +\+\code{\bsl caps \ This is Caps} &&&&&&&&&& \caps This is Caps\cr +\+\code{\bsl capsbf \ This is Bold Caps} &&&&&&&&&& \capsbf This is Bold Caps\cr +\+\code{\bsl capssl \ This is Slanted Caps} &&&&&&&&&& \capssl This is Slanted Caps\cr +\+\code{\bsl capsslbf \ This is Slanted Bold Caps} &&&&&&&&&& \capsslbf This is Slanted Bold Caps\cr + +\bs + +\+\code{\bsl fiverm \ This is 5\,pt} &&&&&&&&&& \fiverm This is 5\,pt\cr +\+\code{\bsl sixbf \ This is 6\,pt} &&&&&&&&&& \sixbf This is 6\,pt\cr +\+\code{\bsl sevenit \ This is 7\,pt} &&&&&&&&&& \sevenit This is 7\,pt\cr +\+\code{\bsl eightsl \ This is 8\,pt} &&&&&&&&&& \eightsl This is 8\,pt\cr +\+\code{\bsl nineitbf \ This is 9\,pt} &&&&&&&&&& \nineitbf This is 9\,pt\cr +\+\code{\bsl slbf \ This is 10\,pt} &&&&&&&&&& \slbf This is 10\,pt\cr +\+\code{\bsl caps \ This is 11\,pt} &&&&&&&&&& \elevencaps This is 11\,pt\cr +\+\code{\bsl capsbf \ This is 12\,pt} &&&&&&&&&& \twelvecapsbf This is 12\,pt\cr +\+\code{\bsl capssl \ This is 14\,pt} &&&&&&&&&& \fourteencapssl This is 14\,pt\cr +\+\code{\bsl capsslbf \ This is 16\,pt} &&&&&&&&&& \sixteencapsslbf This is 16\,pt\cr\nopagebreak +\+\code{\bsl eighteenrm \ This is 18\,pt} &&&&&&&&&& \eighteenrm This is 18\,pt\cr\nopagebreak +\+\code{\bsl twentybf \ This is 20\,pt} &&&&&&&&&& \twentybf This is 20\,pt\cr +} + +\bs\bs + +The following statement selects Calibri as the sans~serif font at 11\,pt. The \capstex\ code in \code{brown}, after compilation, gives the result displayed on its~right. +\ms +\ii{\code{\bsl mysanzfont\{Calibri\}\{11\}\{\}} %\mysanzfont{Aller}{11}{} +\baselineskip19pt +\+\code{\bsl sansrm \ This is regular} &&&&&&&&&& \sansrm This is regular\cr +\+\code{\bsl sansbf \ This is bold} &&&&&&&&&& \sansbf This is bold\cr +\+\code{\bsl sansit \ This is italic} &&&&&&&&&& \sansit This is italic\cr +\+\code{\bsl sanssl \ This is slanted} &&&&&&&&&& \sanssl This is slanted\cr +\+\code{\bsl sansitbf \ This is italic bold} &&&&&&&&&& \sansitbf This is italic bold\cr +\+\code{\bsl sansslbf \ This is slanted bold} &&&&&&&&&& \sansslbf This is slanted bold\cr +\+\code{\bsl sanscaps \ This is Caps} &&&&&&&&&& \sanscaps This is Caps\cr +\+\code{\bsl sanscapsbf \ This is Bold Caps} &&&&&&&&&& \sanscapsbf This is Bold Caps\cr +\+\code{\bsl sanscapssl \ This is Slanted Caps} &&&&&&&&&& \sanscapssl This is Slanted Caps\cr +\+\code{\bsl sanscapsslbf \ This is Slanted Bold Caps} &&&&&&&&&& \sanscapsslbf This is Slanted Bold Caps\cr + +\bs\bs + +\+\code{\bsl sansfiverm \ This is 5.5\,pt} &&&&&&&&&& \sansfiverm This is 5.5\,pt\cr +\+\code{\bsl sanssixbf \ This is 6.6\,pt} &&&&&&&&&& \sanssixbf This is 6.6\,pt\cr +\+\code{\bsl sanssevenit \ This is 7.7\,pt} &&&&&&&&&& \sanssevenit This is 7.7\,pt\cr +\+\code{\bsl sanseightsl \ This is 8.8\,pt} &&&&&&&&&& \sanseightsl This is 8.8\,pt\cr +\+\code{\bsl sansnineitbf \ This is 9.9\,pt} &&&&&&&&&& \sansnineitbf This is 9.9\,pt\cr +\+\code{\bsl sansslbf \ This is 11\,pt} &&&&&&&&&& \sansslbf This is 11\,pt\cr +\+\code{\bsl sanscaps \ This is 12.1\,pt} &&&&&&&&&& \sanselevencaps This is 12.1\,pt\cr +\+\code{\bsl sanscapsbf \ This is 13.2\,pt} &&&&&&&&&& \sanstwelvecapsbf This is 13.2\,pt\cr +\+\code{\bsl sanscapssl \ This is 15.4\,pt} &&&&&&&&&& \sansfourteencapssl This is 15.4\,pt\cr +\+\code{\bsl sanscapsslbf \ This is 17.6\,pt} &&&&&&&&&& \sanssixteencapsslbf This is 17.6\,pt\cr +\+\code{\bsl sanseighteenrm \ This is 19.8\,pt} &&&&&&&&&& \sanseighteenrm This is 19.8\,pt\cr +\+\code{\bsl sanstwentybf \ This is 22\,pt} &&&&&&&&&& \sanstwentybf This is 22\,pt\cr +} + +\bs\bs + +\hrule\vbox{\noindent\vrule\NoBlackBoxes\vbox{\vskip2mm\leftskip7mm\rightskip7mm +{\parindent0pt +\verbatim +\myzfont{Warnock Pro}{10}{+pnum:+lnum} +\mysanzfont{Calibri}{11}{+pnum:+lnum} +% +\noindent{\sanstwelvecapsbf Text font change in action} +\medskip +\noindent The command {\tt \char'134 myzfont} changes the main text body font family to Warnock Pro at 10\,pt with the current font set to regular. This is {\bf bold} and this is {\sixteenitbf italic bold at 16\,pt}. {\sansrm The {\sanscaps sans serif} document font is set to Calibri at 11\,pt.} In both the cases we have invoked the {\it proportional figures}~(pnum) and {\it lining figures}~(lnum) features. + +We can change the font locally to {\myfont{Tangerine}{20}{} Tangerine font at 20\,pt} or {\myfont{Chaparral Pro}{11.4}{} Chaparral Pro at 11.4\,pt (this is {\bf Chaparral bold}). +|endverbatim +} +}\vrule}\hrule\BlackBoxes} +\sk\cl{$\downarrow \downarrow \downarrow$}\sk +\hrule\vbox{\noindent\vrule\NoBlackBoxes\vbox{\vskip2mm\leftskip7mm\rightskip7mm +\noindent{\sanstwelvecapsbf Text font change in action} +\medskip +\noindent The command {\tt \char'134 myzfont} changes the main text body font family to Warnock Pro at 10\,pt with the current font set to regular. This is {\bf bold} and this is {\sixteenitbf italic bold at 16\,pt}. {\sansrm The {\sanscaps sans serif} document font is set to Calibri at 11\,pt.} In both the cases we have invoked the {\it proportional figures}~(pnum) and +{\it lining figures}~(lnum) features. + +We can change the font locally to {\myfont{Tangerine}{20}{} Tangerine font at 20\,pt} or +{\myfont{Chaparral Pro}{11.4}{} Chaparral Pro at 11.4\,pt (this is {\bf Chaparral bold}).} +\medskip}\vrule}\hrule\BlackBoxes\bigskip\bigskip + + +\section{Hanging punctuation}{Hanging punctuation}Utilizing the character protrusion capability of \capsxetex~(also possible with plain \capstex), the \code{\bsl hangpun} command of \code{font-change-xetex} provides a way to employ hanging punctuation, where the punctuation marks fall out of the text margin. From a typographic perspective, the use of hanging punctuation is debatable. In my opinion, it leads to more harmonious text justification and more elegant typesetting. The following text sample includes the same text with and without hanging~punctuation. + + + +\bs\ms +\ii\hbox{\vbox{\hrule\hbox{\vrule\hskip2mm\hbox{ +\vbox to 4.3cm{\hsize=6cm \eightrm\fontss \nohangpun +\ms{\bf\hskip1mm Without hanging punctuation}\sk +\ii Some people are for using hanging punctuation, and some against. In the end, it is a matter of personal choice. He said, ``I use hanging punctuation.'' ``But does it really lead to better text justification?'' asked~Joe. + +\indent One may argue that protruding punctuation marks draw unnecessary attention but this is questionable. You should try it to find it out yourself\,! Well, let's see\dots +\vfill +}{\color{green}\vrule} \hskip2mm\vrule}} +\hrule} +\hskip1.3cm +\vbox{\hrule\hbox{\vrule\hskip2mm\hbox{ +\vbox to 4.3cm{\hsize=6cm \eightrm\fontss \hangpun +\ms{\bf\hskip5mm With hanging punctuation}\sk +\ii Some people are for using hanging punctuation, and some against. In the end, it is a matter of personal choice. He said, ``I use hanging punctuation.'' ``But does it really lead to better text justification?'' asked~Joe. + +\indent One may argue that protruding punctuation marks draw unnecessary attention but this is questionable. You should try it to find it out yourself\,! Well, let's see\dots +\vfill +}{\color{green}\vrule} \hskip2mm\vrule}} +\hrule}\NoBlackBoxes} + + +To activate hanging punctuation, the command \code{\bsl hangpun} has to be declared after declaring \code{\bsl myzfont} or \code{\bsl myfont}. It can be deactivated by \code{\bsl nohangpun}. + + +\section{The OpenType layout}{The OpenType layout}Vector scalable fonts~(which includes most computer fonts) consist of glyph outlines and font layout tables. The glyph outlines of most Windows fonts are either TrueType or PostScript, and these font files are either in TrueType format~({\tt .ttf} extenstion) or OpenType format~({\tt .otf} extension). Generally, most modern PostScript outline fonts are in {\tt .otf} format. The font layout tables of all {\tt .otf} fonts~(e.g., Warnock Pro, Minion Pro, Linux Libertine~O, Calluna, etc.) and many {\tt .ttf} fonts~(e.g., Calibri, Georgia, Constantia, etc.) use the OpenType layout. This means that the OpenType font features included in these {\tt .otf} and {\tt .ttf} fonts can be accessed via OpenType layout tags~\cite{opentype_tag_registry}. + +An OpenType layout tag is an {\caps ascii} character string of 4~bytes that is used to identify the writing scripts, language systems, features and baselines of the font. Using \capsxetex's \code{\bsl font} command, the macros included in the package \code{font-change-xetex} can declare these tags by incorporating them as \textcolor{blue}{\sl optional font features}. A knowledge of some of these tags can be quite useful because different fonts have different default features, which the user may want to change. For example, the main font used in this document, Warnock Pro, invokes oldstyle figures~(745.12) by default but scientific texts demand lining figures~({\myfont{Warnock Pro}{10}{:+pnum:+lnum}745.12}). By using the tag {\tt lnum}, which overrides oldstyle figures with lining figures, we can make the desired switch. There are four categories of OpenType layout tags: Script, Language, Feature, and~Baseline. + +\subsection{Script tags}Script tags generally correspond to a Unicode script and allow the user to provide information about the writing script. This feature is of great value when using non-Latin writing scripts or typesetting a document using multiple scripts. The sample texts below have been written in Devanagari using the Adobe Devanagari font but in the former case, the Latin script tag~(non-default for this font) has been used. Due to this, the Devanagari ligatures are missing in the first text and the Hindi is syntactically~incorrect. + +\bs +\vbox{\hrule\hbox{\vrule\hbox{ +\vbox{\vskip0.5\baselineskip +{\myfont{Adobe Devanagari}{12}{:script=latn} +\verbatim \myfont{Adobe Devanagari}{12}{:script=latn}|endverbatim + +विद्या अर्जन का प्रयास + +Some vowels are misplaced and the ligatures are missing.} +\vskip0.5\baselineskip}\vrule}}\hrule} + +\ms + +\vbox{\hrule\hbox{\vrule\hbox{ +\vbox{\vskip0.5\baselineskip +{\myfont{Adobe Devanagari}{12}{:script=deva} +\verbatim \myfont{Adobe Devanagari}{12}{:script=deva}|endverbatim + +विद्या अर्जन का प्रयास + +All vowels and ligatures are well placed.} +\vskip0.5\baselineskip}\vrule}}\hrule} + +\ms +Generally, font files have a default writing script. For example, all the fonts used in this document, except the ones used to typeset Devanagari, use Latin~({\tt latn}) as the default script. A complete list of script tags can be found~\href{https://www.microsoft.com/typography/otspec/scripttags.htm}{here}. + +\subsection{Language tags}Language tags decide how text written in a given script is presented. For example, both English and French typesetting use the same writing script but the presentation of text is language dependent. A list of language tags is available \href{https://www.microsoft.com/typography/otspec/languagetags.htm}{here}. + + +\subsection{Feature tags}Feature tags allow the user to choose between different glyph forms. For example, we can choose whether to use standard ligatures (like ffi) or not~(\hbox{f}\hbox{f}\hbox{i}). A table of feature tags is given \href{https://www.microsoft.com/typography/otspec/featurelist.htm}{here}, and their description on this \href{https://www.microsoft.com/typography/otspec/features_ae.htm}{page}. +To use a font feature which has a tag called {\tt ftag} via \code{font-change-xetex}, we have to type \code{:+ftag} in the \textcolor{blue}{\sl optional font features}. Suppose that the same feature is a default feature of the font, then in order to deactivate this feature we have to type \code{:-ftag} in the \textcolor{blue}{\sl optional font features}. The following example clarifies this usage. + +\bs +\vbox{\hrule\hbox{\vrule\hbox{ +\vbox{\vskip0.5\baselineskip \parindent=0pt\leftskip7mm\rightskip7mm +{\hyphenpenalty10000 +\verbatim \myfont{Warnock Pro}{10}{}% Declares Warnock Pro font at 10pt with the default settings + +The font Warnock Pro considers {\bf Ţh Ťh ff fi fl ffi ffl fj ffj Th} as {\it standard ligatures} ({\tt liga}), and {\bf st ct sp} as {\it discretionary ligatures}~({\tt dlig}). The default settings of this font allow standard ligatures and suppress +discretionary ligatures. We will deactivate standard ligatures and turn on discretionary ligatures with + +\myfont{Warnock Pro}{10}{:-liga:+dlig} +% Standard Ligatures deactivated and Discretionary Ligatures activated + +Now the standard ligatures ({\bf Ţh Ťh ff fi fl ffi ffl fj ffj Th}) have been turned off and discretionary ligatures ({\bf st ct sp}) have been turned on. +|endverbatim +} +\vskip0.5\baselineskip}\vrule}}\hrule} +\sk\cl{$\downarrow \downarrow \downarrow$}\sk +\vbox{\hrule\hbox{\vrule\hbox{\leftskip7mm\rightskip7mm +\vbox{\vskip0.5\baselineskip +{The font Warnock Pro considers {\bf Ţh Ťh ff fi fl ffi ffl fj ffj Th} as {\it standard ligatures}~({\tt liga}), and {\bf st ct sp} as {\it discretionary ligatures}~({\tt dlig}). The default settings of this font allow standard ligatures and suppress discretionary ligatures. We will deactivate standard ligatures and turn on discretionary ligatures with + +\myfont{Warnock Pro}{10}{:-liga:+dlig} +% Standard ligatures deactivated and discretionary ligatures activated + +Now the standard ligatures ({\bf Ţh Ťh ff fi fl ffi ffl fj ffj Th}) have been turned off and discretionary ligatures ({\bf st ct sp}) have been turned on. +} +\vskip0.5\baselineskip}\vrule}}\hrule} + +\bs + +The following example shows how the statements of the \code{font-change-xetex} can be used within a paragraph and how \code{\bsl myfont} is used to exploit some features of Bickham Script Pro~font. + +\bs +\vbox{\hrule\hbox{\vrule\hbox{\leftskip7mm\rightskip7mm +\vbox{\vskip0.5\baselineskip \parindent=0pt +{\verbatim +\myfont{Bickham Script Pro}{30}{} +% Declares Bickham Script Pro font at 30pt with default features + +This final statement is Crucial. + +\myfont{Bickham Script Pro}{30}{:-calt:-clig} +% Contextual Alternates and Contextual Ligatures deactivated + +This final statement is Crucial. + +{\myfont{Bickham Script Pro}{30}{:+swsh} +% Swash glyphs activated + +This final statement is Crucial. + +% Alternate available fonts are accessed to locally change some glyphs +{\myfont{Bickham Script Pro}{30}{+aalt}T}his +{\myfont{Bickham Script Pro}{30}{+aalt=2}f}inal +statemen{\myfont{Bickham Script Pro}{30}{+aalt=3}t} is Crucial.} +|endverbatim +} +\vskip0.5\baselineskip}\vrule}}\hrule} +\sk\cl{$\downarrow \downarrow \downarrow$}\sk +\vbox{\hrule\hbox{\vrule\hbox{\leftskip7mm\rightskip7mm +\vbox{\vskip0.5\baselineskip \parindent=0pt +{ +\myfont{Bickham Script Pro}{30}{} +% Declares Bickham Script Pro font at 30pt with default features + +This final statement is Crucial. + +\myfont{Bickham Script Pro}{30}{:-calt:-clig} +% Contextual Alternates and Contextual Ligatures deactivated + +This final statement is Crucial. + +{\myfont{Bickham Script Pro}{30}{:+swsh} +% Swash glyphs activated + +This final statement is Crucial. + +% Alternate available fonts are accessed to locally change some glyphs +{\myfont{Bickham Script Pro}{30}{+aalt}T}his {\myfont{Bickham Script Pro}{30}{+aalt=2}f}inal statemen{\myfont{Bickham Script Pro}{30}{+aalt=3}t} is Crucial.} +} +\vskip0.5\baselineskip}\vrule}}\hrule} + + + + + + +\subsection{Baseline tags}These convey information about the baseline and about writing modes like horizontal, vertical, and math. More details about these tags can be found \href{https://www.microsoft.com/typography/otspec/baselinetags.htm}{here}. + + + +\section{Other features}{Other features}This section will describe some font features provided by \capsxetex. + +\subsection{Font options}When an installed font is declared using \code{font-change-xetex}, its size and style variant are selected as well. However, if the user would like to force a particular variant of a font family, the following arguments can be~used:\ms + +\+/B && Selects the {\bf bold} variant of the declared font.\cr +\+/I && Selects the {\it italic} variant of the declared font.\cr +\+/BI && Selects the {\itbf bold italic} or {\itbf italic bold} variant of the declared font.\cr +\+/IB && Same as /BI.\cr +\+/S${}=x$ && Uses the font version corresponding to the optical size of $x$\,pt.\cr +\+/AAT && only for Mac OS~X.\cr +\+/ICU && only for Mac OS~X.\cr + +\bs +\vbox{\hrule\hbox{\vrule\hbox{\leftskip7mm\rightskip7mm +\vbox{\vskip0.5\baselineskip \parindent=0pt +{ +\verbatim {\myfont{Warnock Pro/B}{10}{} sets Warnock Pro bold font as the regular font but it is better to say} \myfont{Warnock Pro}{10}{} and then type {\bf some in bold} and {\rm some in regular.}|endverbatim +} +\vskip0.5\baselineskip}\vrule}}\hrule} +\sk\cl{$\downarrow \downarrow \downarrow$}\sk +\coderesult{\fontss {\bf sets Warnock Pro bold font as the regular font but it is better to say} and then type {\bf some in bold} and some in regular.} + + + +\subsubsection{Optical sizes}If a font family includes optical sizes then they can be employed using the {\tt /S} option. Fonts with optical size variants produce finely adjusted typefaces according to type-size---this can improve text legibility and typesetting appeal. The default \capstex\ font---Donald Knuth's Computer Modern font---has eight optical sizes: 5, 6, 7, 8, 9, 10, 12, and 17\,pt. Because of these optical fonts, Computer Modern can typeset subscripts, sub-subscripts, superscripts, super-superscripts, and mathematics with elegance. The font used to typeset this document, Warnock Pro, offers four optical sizes: Caption, Regular, Subhead, and Display. Similar optical fonts are provided by other Adobe Pro fonts like Minion Pro, Chaparral Pro, Adobe Garamond Pro,~etc. + +When an installed font family is declared in \capsxetex, the optical sizes are chosen automatically. On my system~(Windows~7 with \capsxetex~version~0.99992), depending on the instructed font~size, the Adobe Pro optical font variant is chosen automatically~as: +\ms +\+{\it Caption} (<8.9\,pt) &&&&&& \font\try="WarnockPro-Regular/S=5" at 10pt \try This is at 10\,pt.\cr +\+{\it Regular} (8.9\,pt, 12.9\,pt] &&&&&& \font\try="WarnockPro-Regular/S=10" at 10pt \try This is at 10\,pt.\cr +\+{\it Subhead} (12.9\,pt, 22.9\,pt] &&&&&& \font\try="WarnockPro-Regular/S=13" at 10pt \try This is at 10\,pt.\cr +\+{\it Display} (>22.9\,pt) &&&&&& \font\try="WarnockPro-Regular/S=23" at 10pt \try This is at 10\,pt.\cr +\ms +If a font family supports optical sizes, then the definitions \code{\bsl myzfont} and \code{\bsl mysanzfont} select the appropriate sizes automatically. Using \code{\bsl myfont}, we can force a particular optical font size~(see the following example) as well. If the declared font family does~not support optical sizes or if \capsxetex\ is not able to use them, then the usual font is used at the instructed~size. + +\bs +\vbox{\hrule\hbox{\vrule\hbox{\leftskip7mm\rightskip7mm +\vbox{\vskip0.5\baselineskip \parindent=0pt +{\verbatim +\twentyrm% Uses the 20 pt variant, that is, Subhead +\noindent Triangles-un-zybfi + +\myfont{Warnock Pro/S=5}{20}{}% Forces the 5 pt variant, that is, Caption at 20 pt +\noindent Triangles-un-zybfi|endverbatim +} +\vskip0.5\baselineskip}\vrule}}\hrule} +\sk\cl{$\downarrow \downarrow \downarrow$}\sk +\vbox{\hrule\hbox{\vrule\hbox{\leftskip7mm\rightskip7mm +\vbox{\vskip0.5\baselineskip \parindent=0pt +{ +\noindent \twentyrm Triangles-un-zybfi + +\noindent \myfont{Warnock Pro/S=5}{20}{} +Triangles-un-zybfi +} +\vskip0.5\baselineskip}\vrule}}\hrule} + + + + + + + + + +\subsection{Color}In the \textcolor{blue}{\sl optional font features} of the definitions of \code{font-change-xetex}, the user can declare the font color using the argument: + +\cl{\code{color=RRGGBB}} +\sk +\ii where {\tt RR}, {\tt GG}, and {\tt BB} are the three respective pairs of \textcolor{red}{Red}, \textcolor{green}{Green}, and \textcolor{blue}{Blue} hexadecimal values. Many RGB colors and their corresponding hexadecimal values can be found \href{http://cloford.com/resources/colours/500col.htm}{here}. + +\bs + +\vbox{\hrule\hbox{\vrule\hbox{\leftskip7mm\rightskip7mm +\vbox{\vskip0.5\baselineskip \parindent=0pt +{ +\verbatim \myfont{Warnock Pro}{10}{color=800080} This is somewhat purple.|endverbatim +} +\vskip0.5\baselineskip}\vrule}} +\hrule} +\sk\cl{$\downarrow \downarrow \downarrow$}\sk +\coderesult{\font\try="WarnockPro-Regular:color=800080" at 10pt \try This is somewhat purple.} + + + +\subsection{Letter-spacing}The letters of a declared font~(installed on the system) can be spaced using the \capsxetex's \code{letterspace} option. The following example illustrates~this. + +\bs +\vbox{\hrule\hbox{\vrule\hbox{\leftskip7mm\rightskip7mm +\vbox{\vskip0.5\baselineskip \parindent=0pt +{ +\verbatim \myfont{Warnock Pro}{10}{letterspace=10} The letters are too spaced.|endverbatim +} +\vskip0.5\baselineskip}\vrule}} +\hrule} +\sk\cl{$\downarrow \downarrow \downarrow$}\sk +\coderesult{\font\try="WarnockPro-Regular:letterspace=10" at 10pt \try The letters are too spaced.} + + + + +\subsection{Inter-line and inter-word spacing}When a font is declared using \code{\bsl myzfont}, \code{\bsl mysanzfont}, or \code{\bsl myfont} at a given size, the inter-line and inter-word spacing is done automatically depending on size of the font. This is done through the definition \code{\bsl fontss}~(declared in the macro \code{font-change-xetex}), which~is: + +\ms +{\color{brown} +\verbatim \def\fontss{\parindent=2em% +\baselineskip=2.8ex% +\spaceskip=0.30001em plus0.11em minus0.11em}% +|endverbatim} +\ms + +If other---small or large---font sizes are used via definitions like \code{\bsl fourteenbf} or \code{\bsl sevenrm}, it is recommended to declare \code{\bsl fontss} immediately after declaring font-size commands. If one wants to change the parameters of the \code{\bsl fontss} definition, a new definition with the same name but different parameters can be declared anywhere in the document---this will effect the following text. Also, it is possible to declare the just parameters included in \code{\bsl fontss}~differently. + +\bs +\vbox{\hrule\hbox{\vrule\hbox{\leftskip7mm\rightskip7mm +\vbox{\vskip0.5\baselineskip \parindent=0pt +{\verbatim +\myzfont{Warnock Pro}{15}{} The type is large but the inter-line and inter-word space have been taken into account. +\bigskip\bigskip +\twentyrm This is 30\,pt; the inter-line and inter-word spacing is not good. +\bigskip\bigskip +\twentyrm\fontss This is 30\,pt; the inter-line and inter-word spacing is better. +|endverbatim +} +\vskip0.5\baselineskip}\vrule}}\hrule} +\sk\cl{$\downarrow \downarrow \downarrow$}\sk +\vbox{\hrule\hbox{\vrule\hbox{\leftskip7mm\rightskip7mm +\vbox{\vskip0.5\baselineskip \parindent=0pt +{ +{\font\try="WarnockPro-Regular" at 15pt \try \fontss +The type is large but the inter-line and inter-word space have been taken into account.} +\bigskip\bigskip +\font\try="WarnockPro-Regular" at 30pt \try +\indent This is 30\,pt; the inter-line and inter-word spacing is not good. +\bigskip\bigskip +\fontss +This is 30\,pt; the inter-line and inter-word spacing is better. +} +\vskip0.5\baselineskip}\vrule}}\hrule} + + + +\section{Special characters using Unicode}{Special characters using Unicode}The package \code{font-change-xetex} includes several commands to typeset special Unicode characters. If the active font has the required glyph, then the following commands produce the corresponding special characters. Note that there is a prefix {\tt u} before the character's common~name. + +\quadcolumns +{\myfont{Cambria Math}{10}{} +\settabs5\columns +\+{\color{brown} \verbatim \uAlpha |endverbatim} &&&{Α}\cr +\+{\color{brown} \verbatim \uBeta |endverbatim} &&&{Β}\cr +\+{\color{brown} \verbatim \uGamma |endverbatim} &&&{Γ}\cr +\+{\color{brown} \verbatim \uDelta |endverbatim} &&&{Δ}\cr +\+{\color{brown} \verbatim \uEpsilon |endverbatim} &&&{Ε}\cr +\+{\color{brown} \verbatim \uZeta |endverbatim} &&&{Ζ}\cr +\+{\color{brown} \verbatim \uEta |endverbatim} &&&{Η}\cr +\+{\color{brown} \verbatim \uTheta |endverbatim} &&&{Θ}\cr +\+{\color{brown} \verbatim \uIota |endverbatim} &&&{Ι}\cr +\+{\color{brown} \verbatim \uKappa |endverbatim} &&&{Κ}\cr +\+{\color{brown} \verbatim \uLambda |endverbatim} &&&{Λ}\cr +\+{\color{brown} \verbatim \uMu |endverbatim} &&&{Μ}\cr +\+{\color{brown} \verbatim \uNu |endverbatim} &&&{Ν}\cr +\+{\color{brown} \verbatim \uXi |endverbatim} &&&{Ξ}\cr +\+{\color{brown} \verbatim \uOmicron |endverbatim} &&&{Ο}\cr +\+{\color{brown} \verbatim \uPi |endverbatim} &&&{Π}\cr +\+{\color{brown} \verbatim \uRho |endverbatim} &&&{Ρ}\cr +\+{\color{brown} \verbatim \uSigma |endverbatim} &&&{Σ}\cr +\+{\color{brown} \verbatim \uTau |endverbatim} &&&{Τ}\cr +\+{\color{brown} \verbatim \uUpsilon |endverbatim} &&&{Υ}\cr +\+{\color{brown} \verbatim \uPhi |endverbatim} &&&{Φ}\cr +\+{\color{brown} \verbatim \uChi |endverbatim} &&&{Χ}\cr +\+{\color{brown} \verbatim \uPsi |endverbatim} &&&{Ψ}\cr +\+{\color{brown} \verbatim \uOmega |endverbatim} &&&{Ω}\cr +\+{\color{brown} \verbatim \ualpha |endverbatim} &&&{α}\cr +\+{\color{brown} \verbatim \ubeta |endverbatim} &&&{β}\cr +\+{\color{brown} \verbatim \ugamma |endverbatim} &&&{γ}\cr +\+{\color{brown} \verbatim \udelta |endverbatim} &&&{δ}\cr +\+{\color{brown} \verbatim \uepsilon |endverbatim} &&&{ε}\cr +\+{\color{brown} \verbatim \uzeta |endverbatim} &&&{ζ}\cr +\+{\color{brown} \verbatim \ueta |endverbatim} &&&{η}\cr +\+{\color{brown} \verbatim \utheta |endverbatim} &&&{θ}\cr +\+{\color{brown} \verbatim \uiota |endverbatim} &&&{ι}\cr +\+{\color{brown} \verbatim \ukappa |endverbatim} &&&{κ}\cr +\+{\color{brown} \verbatim \ulambda |endverbatim} &&&{λ}\cr +\+{\color{brown} \verbatim \umu |endverbatim} &&&{μ}\cr +\+{\color{brown} \verbatim \unu |endverbatim} &&&{ν}\cr +\+{\color{brown} \verbatim \uxi |endverbatim} &&&{ξ}\cr +\+{\color{brown} \verbatim \uomicron |endverbatim} &&&{ο}\cr +\+{\color{brown} \verbatim \upi |endverbatim} &&&{π}\cr +\+{\color{brown} \verbatim \urho |endverbatim} &&&{ρ}\cr +\+{\color{brown} \verbatim \usigmaf |endverbatim} &&&{ς}\cr +\+{\color{brown} \verbatim \usigma |endverbatim} &&&{σ}\cr +\+{\color{brown} \verbatim \utau |endverbatim} &&&{τ}\cr +\+{\color{brown} \verbatim \uupsilon |endverbatim} &&&{υ}\cr +\+{\color{brown} \verbatim \uphi |endverbatim} &&&{φ}\cr +\+{\color{brown} \verbatim \uchi |endverbatim} &&&{χ}\cr +\+{\color{brown} \verbatim \upsi |endverbatim} &&&{ψ}\cr +\+{\color{brown} \verbatim \uomega |endverbatim} &&&{ω}\cr +\+{\color{brown} \verbatim \uthetasym |endverbatim} &&&{ϑ}\cr +\+{\color{brown} \verbatim \uupsih |endverbatim} &&&{ϒ}\cr +\+{\color{brown} \verbatim \upiv |endverbatim} &&&{ϖ}\cr +\+{\color{brown} \verbatim \ubull |endverbatim} &&&{•}\cr +\+{\color{brown} \verbatim \uhellip |endverbatim} &&&{…}\cr +\+{\color{brown} \verbatim \uprime |endverbatim} &&&{′}\cr +\+{\color{brown} \verbatim \uPrime |endverbatim} &&&{″}\cr +\+{\color{brown} \verbatim \uoline |endverbatim} &&&{‾}\cr +\+{\color{brown} \verbatim \ufrasl |endverbatim} &&&{⁄}\cr +\+{\color{brown} \verbatim \uweierp |endverbatim} &&&{℘}\cr +\+{\color{brown} \verbatim \uimage |endverbatim} &&&{ℑ}\cr +\+{\color{brown} \verbatim \ureal |endverbatim} &&&{ℜ}\cr +\+{\color{brown} \verbatim \utrade |endverbatim} &&&{™}\cr +\+{\color{brown} \verbatim \ualefsym |endverbatim} &&&{ℵ}\cr +\+{\color{brown} \verbatim \ularr |endverbatim} &&&{←}\cr +\+{\color{brown} \verbatim \uuarr |endverbatim} &&&{↑}\cr +\+{\color{brown} \verbatim \urarr |endverbatim} &&&{→}\cr +\+{\color{brown} \verbatim \udarr |endverbatim} &&&{↓}\cr +\+{\color{brown} \verbatim \uharr |endverbatim} &&&{↔}\cr +\+{\color{brown} \verbatim \ucrarr |endverbatim} &&&{↵}\cr +\+{\color{brown} \verbatim \ulArr |endverbatim} &&&{⇐}\cr +\+{\color{brown} \verbatim \uuArr |endverbatim} &&&{⇑}\cr +\+{\color{brown} \verbatim \urArr |endverbatim} &&&{⇒}\cr +\+{\color{brown} \verbatim \udArr |endverbatim} &&&{⇓}\cr +\+{\color{brown} \verbatim \uhArr |endverbatim} &&&{⇔}\cr +\+{\color{brown} \verbatim \uforall |endverbatim} &&&{∀}\cr +\+{\color{brown} \verbatim \upart |endverbatim} &&&{∂}\cr +\+{\color{brown} \verbatim \uexist |endverbatim} &&&{∃}\cr +\+{\color{brown} \verbatim \uempty |endverbatim} &&&{∅}\cr +\+{\color{brown} \verbatim \unabla |endverbatim} &&&{∇}\cr +\+{\color{brown} \verbatim \uisin |endverbatim} &&&{∈}\cr +\+{\color{brown} \verbatim \unotin |endverbatim} &&&{∉}\cr +\+{\color{brown} \verbatim \uni |endverbatim} &&&{∋}\cr +\+{\color{brown} \verbatim \uprod |endverbatim} &&&{∏}\cr +\+{\color{brown} \verbatim \usum |endverbatim} &&&{∑}\cr +\+{\color{brown} \verbatim \uminus |endverbatim} &&&{−}\cr +\+{\color{brown} \verbatim \ulowast |endverbatim} &&&{∗}\cr +\+{\color{brown} \verbatim \uradic |endverbatim} &&&{√}\cr +\+{\color{brown} \verbatim \uprop |endverbatim} &&&{∝}\cr +\+{\color{brown} \verbatim \uinfin |endverbatim} &&&{∞}\cr +\+{\color{brown} \verbatim \uang |endverbatim} &&&{∠}\cr +\+{\color{brown} \verbatim \uand |endverbatim} &&&{∧}\cr +\+{\color{brown} \verbatim \uor |endverbatim} &&&{∨}\cr +\+{\color{brown} \verbatim \ucap |endverbatim} &&&{∩}\cr +\+{\color{brown} \verbatim \ucup |endverbatim} &&&{∪}\cr +\+{\color{brown} \verbatim \uint |endverbatim} &&&{∫}\cr +\+{\color{brown} \verbatim \uthere4 |endverbatim} &&&{∴}\cr +\+{\color{brown} \verbatim \usim |endverbatim} &&&{∼}\cr +\+{\color{brown} \verbatim \ucong |endverbatim} &&&{≅}\cr +\+{\color{brown} \verbatim \uasymp |endverbatim} &&&{≈}\cr +\+{\color{brown} \verbatim \une |endverbatim} &&&{≠}\cr +\+{\color{brown} \verbatim \uequiv |endverbatim} &&&{≡}\cr +\+{\color{brown} \verbatim \ule |endverbatim} &&&{≤}\cr +\+{\color{brown} \verbatim \uge |endverbatim} &&&{≥}\cr +\+{\color{brown} \verbatim \usub |endverbatim} &&&{⊂}\cr +\+{\color{brown} \verbatim \usup |endverbatim} &&&{⊃}\cr +\+{\color{brown} \verbatim \unsub |endverbatim} &&&{⊄}\cr +\+{\color{brown} \verbatim \usube |endverbatim} &&&{⊆}\cr +\+{\color{brown} \verbatim \usupe |endverbatim} &&&{⊇}\cr +\+{\color{brown} \verbatim \uoplus |endverbatim} &&&{⊕}\cr +\+{\color{brown} \verbatim \uotimes |endverbatim} &&&{⊗}\cr +\+{\color{brown} \verbatim \uperp |endverbatim} &&&{⊥}\cr +\+{\color{brown} \verbatim \usdot |endverbatim} &&&{⋅}\cr +\+{\color{brown} \verbatim \ulceil |endverbatim} &&&{⌈}\cr +\+{\color{brown} \verbatim \urceil |endverbatim} &&&{⌉}\cr +\+{\color{brown} \verbatim \ulfloor |endverbatim} &&&{⌊}\cr +\+{\color{brown} \verbatim \urfloor |endverbatim} &&&{⌋}\cr +\+{\color{brown} \verbatim \ulang |endverbatim} &&&{⟨}\cr +\+{\color{brown} \verbatim \urang |endverbatim} &&&{⟩}\cr +\+{\color{brown} \verbatim \uloz |endverbatim} &&&{◊}\cr +\+{\color{brown} \verbatim \uspades |endverbatim} &&&{♠}\cr +\+{\color{brown} \verbatim \uclubs |endverbatim} &&&{♣}\cr +\+{\color{brown} \verbatim \uhearts |endverbatim} &&&{♥}\cr +\+{\color{brown} \verbatim \udiams |endverbatim} &&&{♦}\cr +\+{\color{brown} \verbatim \ufnof |endverbatim} &&&{ƒ}\cr +\+{\color{brown} \verbatim \uensp |endverbatim} &&&{ }\cr +\+{\color{brown} \verbatim \uemsp |endverbatim} &&&{ }\cr +\+{\color{brown} \verbatim \uthinsp |endverbatim} &&&{ }\cr +\+{\color{brown} \verbatim \uzwnj |endverbatim} &&&{}\cr +\+{\color{brown} \verbatim \uzwj |endverbatim} &&&{}\cr +\+{\color{brown} \verbatim \ulrm |endverbatim} &&&{}\cr +\+{\color{brown} \verbatim \urlm |endverbatim} &&&{}\cr +\+{\color{brown} \verbatim \undash |endverbatim} &&&{–}\cr +\+{\color{brown} \verbatim \umdash |endverbatim} &&&{—}\cr +\+{\color{brown} \verbatim \ulsquo |endverbatim} &&&{‘}\cr +\+{\color{brown} \verbatim \ursquo |endverbatim} &&&{’}\cr +\+{\color{brown} \verbatim \usbquo |endverbatim} &&&{‚}\cr +\+{\color{brown} \verbatim \uldquo |endverbatim} &&&{“}\cr +\+{\color{brown} \verbatim \urdquo |endverbatim} &&&{”}\cr +\+{\color{brown} \verbatim \ubdquo |endverbatim} &&&{„}\cr +\+{\color{brown} \verbatim \udagger |endverbatim} &&&{†}\cr +\+{\color{brown} \verbatim \uDagger |endverbatim} &&&{‡}\cr +\+{\color{brown} \verbatim \upermil |endverbatim} &&&{‰}\cr +\+{\color{brown} \verbatim \ulsaquo |endverbatim} &&&{‹}\cr +\+{\color{brown} \verbatim \ursaquo |endverbatim} &&&{›}\cr +\+{\color{brown} \verbatim \ueuro |endverbatim} &&&{€}\cr +\+{\color{brown} \verbatim \ucirc |endverbatim} &&&{ˆ}\cr +\+{\color{brown} \verbatim \utilde |endverbatim} &&&{˜}\cr +\+{\color{brown} \verbatim \uOElig |endverbatim} &&&{Œ}\cr +\+{\color{brown} \verbatim \uoelig |endverbatim} &&&{œ}\cr +\+{\color{brown} \verbatim \uScaron |endverbatim} &&&{Š}\cr +\+{\color{brown} \verbatim \uscaron |endverbatim} &&&{š}\cr +\+{\color{brown} \verbatim \uYuml |endverbatim} &&&{Ÿ}\cr +\+{\color{brown} \verbatim \uquot |endverbatim} &&&{"}\cr +\+{\color{brown} \verbatim \uamp |endverbatim} &&&{\&}\cr +\+{\color{brown} \verbatim \uapos |endverbatim} &&&{'}\cr +\+{\color{brown} \verbatim \ult |endverbatim} &&&{<}\cr +\+{\color{brown} \verbatim \ugt |endverbatim} &&&{>}\cr +\+{\color{brown} \verbatim \unbsp |endverbatim} &&&{}\cr +\+{\color{brown} \verbatim \uiexcl |endverbatim} &&&{¡}\cr +\+{\color{brown} \verbatim \ucent |endverbatim} &&&{¢}\cr +\+{\color{brown} \verbatim \upound |endverbatim} &&&{£}\cr +\+{\color{brown} \verbatim \ucurren |endverbatim} &&&{¤}\cr +\+{\color{brown} \verbatim \uyen |endverbatim} &&&{¥}\cr +\+{\color{brown} \verbatim \ubrvbar |endverbatim} &&&{¦}\cr +\+{\color{brown} \verbatim \usect |endverbatim} &&&{§}\cr +\+{\color{brown} \verbatim \uuml |endverbatim} &&&{¨}\cr +\+{\color{brown} \verbatim \ucopy |endverbatim} &&&{©}\cr +\+{\color{brown} \verbatim \uordf |endverbatim} &&&{ª}\cr +\+{\color{brown} \verbatim \ulaquo |endverbatim} &&&{«}\cr +\+{\color{brown} \verbatim \unot |endverbatim} &&&{¬}\cr +\+{\color{brown} \verbatim \ushy |endverbatim} &&&{}\cr +\+{\color{brown} \verbatim \ureg |endverbatim} &&&{®}\cr +\+{\color{brown} \verbatim \umacr |endverbatim} &&&{¯}\cr +\+{\color{brown} \verbatim \udeg |endverbatim} &&&{°}\cr +\+{\color{brown} \verbatim \uplusmn |endverbatim} &&&{±}\cr +\+{\color{brown} \verbatim \usup2 |endverbatim} &&&{²}\cr +\+{\color{brown} \verbatim \usup3 |endverbatim} &&&{³}\cr +\+{\color{brown} \verbatim \uacute |endverbatim} &&&{´}\cr +\+{\color{brown} \verbatim \umicro |endverbatim} &&&{µ}\cr +\+{\color{brown} \verbatim \upara |endverbatim} &&&{¶}\cr +\+{\color{brown} \verbatim \umiddot |endverbatim} &&&{·}\cr +\+{\color{brown} \verbatim \ucedil |endverbatim} &&&{¸}\cr +\+{\color{brown} \verbatim \usup1 |endverbatim} &&&{¹}\cr +\+{\color{brown} \verbatim \uordm |endverbatim} &&&{º}\cr +\+{\color{brown} \verbatim \uraquo |endverbatim} &&&{»}\cr +\+{\color{brown} \verbatim \ufrac14 |endverbatim} &&&{¼}\cr +\+{\color{brown} \verbatim \ufrac12 |endverbatim} &&&{½}\cr +\+{\color{brown} \verbatim \ufrac34 |endverbatim} &&&{¾}\cr +\+{\color{brown} \verbatim \uiquest |endverbatim} &&&{¿}\cr +\+{\color{brown} \verbatim \uAgrave |endverbatim} &&&{À}\cr +\+{\color{brown} \verbatim \uAacute |endverbatim} &&&{Á}\cr +\+{\color{brown} \verbatim \uAcirc |endverbatim} &&&{Â}\cr +\+{\color{brown} \verbatim \uAtilde |endverbatim} &&&{Ã}\cr +\+{\color{brown} \verbatim \uAuml |endverbatim} &&&{Ä}\cr +\+{\color{brown} \verbatim \uAring |endverbatim} &&&{Å}\cr +\+{\color{brown} \verbatim \uAElig |endverbatim} &&&{Æ}\cr +\+{\color{brown} \verbatim \uCcedil |endverbatim} &&&{Ç}\cr +\+{\color{brown} \verbatim \uEgrave |endverbatim} &&&{È}\cr +\+{\color{brown} \verbatim \uEacute |endverbatim} &&&{É}\cr +\+{\color{brown} \verbatim \uEcirc |endverbatim} &&&{Ê}\cr +\+{\color{brown} \verbatim \uEuml |endverbatim} &&&{Ë}\cr +\+{\color{brown} \verbatim \uIgrave |endverbatim} &&&{Ì}\cr +\+{\color{brown} \verbatim \uIacute |endverbatim} &&&{Í}\cr +\+{\color{brown} \verbatim \uIcirc |endverbatim} &&&{Î}\cr +\+{\color{brown} \verbatim \uIuml |endverbatim} &&&{Ï}\cr +\+{\color{brown} \verbatim \uETH |endverbatim} &&&{Ð}\cr +\+{\color{brown} \verbatim \uNtilde |endverbatim} &&&{Ñ}\cr +\+{\color{brown} \verbatim \uOgrave |endverbatim} &&&{Ò}\cr +\+{\color{brown} \verbatim \uOacute |endverbatim} &&&{Ó}\cr +\+{\color{brown} \verbatim \uOcirc |endverbatim} &&&{Ô}\cr +\+{\color{brown} \verbatim \uOtilde |endverbatim} &&&{Õ}\cr +\+{\color{brown} \verbatim \uOuml |endverbatim} &&&{Ö}\cr +\+{\color{brown} \verbatim \utimes |endverbatim} &&&{×}\cr +\+{\color{brown} \verbatim \uOslash |endverbatim} &&&{Ø}\cr +\+{\color{brown} \verbatim \uUgrave |endverbatim} &&&{Ù}\cr +\+{\color{brown} \verbatim \uUacute |endverbatim} &&&{Ú}\cr +\+{\color{brown} \verbatim \uUcirc |endverbatim} &&&{Û}\cr +\+{\color{brown} \verbatim \uUuml |endverbatim} &&&{Ü}\cr +\+{\color{brown} \verbatim \uYacute |endverbatim} &&&{Ý}\cr +\+{\color{brown} \verbatim \uTHORN |endverbatim} &&&{Þ}\cr +\+{\color{brown} \verbatim \uszlig |endverbatim} &&&{ß}\cr +\+{\color{brown} \verbatim \uagrave |endverbatim} &&&{à}\cr +\+{\color{brown} \verbatim \uaacute |endverbatim} &&&{á}\cr +\+{\color{brown} \verbatim \uacirc |endverbatim} &&&{â}\cr +\+{\color{brown} \verbatim \uatilde |endverbatim} &&&{ã}\cr +\+{\color{brown} \verbatim \uauml |endverbatim} &&&{ä}\cr +\+{\color{brown} \verbatim \uaring |endverbatim} &&&{å}\cr +\+{\color{brown} \verbatim \uaelig |endverbatim} &&&{æ}\cr +\+{\color{brown} \verbatim \uccedil |endverbatim} &&&{ç}\cr +\+{\color{brown} \verbatim \uegrave |endverbatim} &&&{è}\cr +\+{\color{brown} \verbatim \ueacute |endverbatim} &&&{é}\cr +\+{\color{brown} \verbatim \uecirc |endverbatim} &&&{ê}\cr +\+{\color{brown} \verbatim \ueuml |endverbatim} &&&{ë}\cr +\+{\color{brown} \verbatim \uigrave |endverbatim} &&&{ì}\cr +\+{\color{brown} \verbatim \uiacute |endverbatim} &&&{í}\cr +\+{\color{brown} \verbatim \uicirc |endverbatim} &&&{î}\cr +\+{\color{brown} \verbatim \uiuml |endverbatim} &&&{ï}\cr +\+{\color{brown} \verbatim \ueth |endverbatim} &&&{ð}\cr +\+{\color{brown} \verbatim \untilde |endverbatim} &&&{ñ}\cr +\+{\color{brown} \verbatim \uograve |endverbatim} &&&{ò}\cr +\+{\color{brown} \verbatim \uoacute |endverbatim} &&&{ó}\cr +\+{\color{brown} \verbatim \uocirc |endverbatim} &&&{ô}\cr +\+{\color{brown} \verbatim \uotilde |endverbatim} &&&{õ}\cr +\+{\color{brown} \verbatim \uouml |endverbatim} &&&{ö}\cr +\+{\color{brown} \verbatim \udivide |endverbatim} &&&{÷}\cr +\+{\color{brown} \verbatim \uoslash |endverbatim} &&&{ø}\cr +\+{\color{brown} \verbatim \uugrave |endverbatim} &&&{ù}\cr +\+{\color{brown} \verbatim \uuacute |endverbatim} &&&{ú}\cr +\+{\color{brown} \verbatim \uucirc |endverbatim} &&&{û}\cr +\+{\color{brown} \verbatim \uuuml |endverbatim} &&&{ü}\cr +\+{\color{brown} \verbatim \uyacute |endverbatim} &&&{ý}\cr +\+{\color{brown} \verbatim \uthorn |endverbatim} &&&{þ}\cr +\+{\color{brown} \verbatim \uyuml |endverbatim} &&&{ÿ}\cr +\+{\color{brown} \verbatim \uhbar |endverbatim} &&&{ħ}\cr +} + +\singlecolumn + + +\ii We used the font Cambria Math to typeset the special unicode characters above. Other fonts, such as the main font family used in this document can be used as well. Note that some fonts may~not include many Unicode characters. + +\bs + +\vbox{\hrule\hbox{\vrule\hbox{\leftskip7mm\rightskip7mm +\vbox{\vskip0.5\baselineskip \parindent=0pt +{\verbatim +The life of \ualpha\ was made better after tilting and becoming {\it \ualpha}---the tilt was about 15\udeg. Even small {\sevenbf \uGamma} and elder {\fourteenbf \uGamma} want to be {\sevenitbf \uGamma} and {\fourteenitbf \uGamma}. But \umu\ prefers to stay upright when used in $2$\,\umu l.|endverbatim +} +\vskip0.5\baselineskip}\vrule}}\hrule} +\sk\cl{$\downarrow \downarrow \downarrow$}\sk +\coderesult{The life of \ualpha\ was made better after tilting and becoming {\it \ualpha}---the tilt was about 15\udeg. Even small {\sevenbf \uGamma} and elder {\fourteenbf \uGamma} want to be {\sevenitbf \uGamma} and {\fourteenitbf \uGamma}. But \umu\ prefers to stay upright when used in $2$\,\umu l.} + + + + + + + + + +\section{Changing some math fonts}{Changing some math fonts}This feature changes some math fonts and is currently under development. The changed math fonts belong to {\sl family $0$}; this means that regular numerals~({\myfont{Warnock Pro}{10}{:+pnum:+lnum}0--9}), regular letters~(a--z and A--Z), upright Greek capitals~(\uGamma, \uDelta, \uTheta, \uLambda, \uXi, \uPi, \uSigma, \uUpsilon, \uPhi, \uPsi, \uOmega), and hat~(\;$\hat{}$\;) are changed. As a consequence of this change, numbers in text mode~(e.g., {\tt 149.75}) and in math mode~(e.g., {\tt \$149.75\$}) will be typeset using the same font. The change can be implemented~by: +\ms +\ii\inbox{\code{\bsl mymathfont\{\textcolor{blue}{\sl font name}\}\{\textcolor{blue}{\sl font size in points}\}}} +\sk +\ii It is possible to use \code{\bsl mymathfont} multiple times in the same document. However, before reusing \code{\bsl mymathfont}, the font size has to be reset by using the macro \code{\bsl resetfontsize}, which is included in \code{font-change-xetex}. + +\bs +\ii\textcolor{red}{\bf Warning 1}: The macro \code{\bsl mymathfont} should be declared after \code{\bsl myzfont} or \code{\bsl myfont}, and after \code{\bsl hangpun} or \hbox{\code{\bsl nohangpun}}. In other words, the selection of the main body font and the choice between using hanging punctuation or not has to be made before invoking~\code{\bsl mymathfont}. If the definition \code{\bsl mymathfont} is invoked and the text font is selected multiple times using \code{\bsl myfont}, then after each selection, the math font must be redeclared using \code{\bsl mymathfont}. Otherwise, the capital upright Greek letters in math mode will be~missing. + + +\bs +\mymathfont{Warnock Pro}{10} +\vbox{\hrule\hbox{\vrule\hbox{\leftskip7mm\rightskip7mm +\vbox{\vskip0.5\baselineskip \parindent=0pt +{\verbatim +\mysanzfont{Calibri}{11}{:+pnum:+lnum}% To use Calibri as the sans serif font +\input font_kp% From the package font-change; math fonts compatible with Warnock Pro +\myzfont{Warnock Pro}{10}{:+pnum:+lnum}% To use Warnock Pro as the main font +\mymathfont{Warnock Pro}{10}% To typeset some math using Warnock Pro +\centerline{\sanstwelvecapsbf Math Font Test} +\bigskip +This font is Warnock Pro. The year is 2016. Check the number 2016 below +$$ +2016 \sin(x) + e^{xy} + \Gamma. +$$ +In the above expression 2016, $\sin$, (, ), and \uGamma\ are in Warnock Pro, whereas e, x, and y are in Kp font.|endverbatim +} +\vskip0.5\baselineskip}\vrule}}\hrule} +\sk\cl{$\downarrow \downarrow \downarrow$}\sk +\coderesult{\centerline{\sanstwelvecapsbf Math Font Test} +\myfont{Warnock Pro}{10}{:+pnum:+lnum} +\resetfontsize\mymathfont{Warnock Pro}{10}% +\bigskip +This font is Warnock Pro. The year is 2016. Check the number 2016 below +$$ +2016 \sin(x) + e^{xy} + \Gamma. +$$ +In the above expression 2016, $\sin$, (, ), and \uGamma\ are in Warnock Pro, whereas e, x, and y are in Kp font.} + + + + + + +\bs +\ii\textcolor{red}{\bf Warning 2}: It may happen that the declared math font does not have Greek characters or there are some coding issues. As a result of this, the Greek letters will not be typeset! In the following example, we use the font Chaparral Pro for some maths but despite being a ``Pro'' font, it does~not have Greek letter support. + +\bs +\vbox{\hrule\hbox{\vrule\hbox{\leftskip7mm\rightskip7mm +\vbox{\vskip0.5\baselineskip \parindent=0pt +{\verbatim +\mysanzfont{Calibri}{11}{:+pnum:+lnum}% To use Calibri as the sans serif font +\myzfont{Chaparral Pro}{11}{:+pnum:+lnum}% To use Chaparral Pro as the main font +\mymathfont{Chaparral Pro}{11}% To typeset some math using Chaparral Pro +\centerline{\sanstwelvecapsbf Failed Math Font Test} +\bigskip +This font is Chaparral Pro. Take a look at the following equation: +$$ +\Psi(x) = 173x^2 + 22\cos(x) + \Gamma(x) +$$ +In the above expression 173, 22, (, ), and $\cos$ are in Chaparral Pro, while x and = are in Kp font, but the Greek letters are missing.|endverbatim +} +\vskip0.5\baselineskip}\vrule}}\hrule} +\sk\cl{$\downarrow \downarrow \downarrow$}\sk +\vbox{\hrule\hbox{\vrule\hbox{\leftskip7mm\rightskip7mm +\vbox{\vskip0.5\baselineskip \parindent=0pt +{\font\try="Chaparral Pro:+pnum:+lnum" at 11pt \try +\resetfontsize \mymathfont{Chaparral Pro}{11}% To typeset some math using Chaparral Pro +\centerline{\sanstwelvecapsbf Failed Math Font Test} +\bigskip +This font is Chaparral Pro. Take a look at the following equation: +$$ +\Psi(x) = 173x^2 + 22\cos(x) + \Gamma(x) +$$ +In the above expression 173, 22, (, ), and $\cos$ are in Chaparral Pro, while x and = are in Kp font, but the Greek letters are missing.} +\vskip0.5\baselineskip}\vrule}}\hrule} + + + + + +\section{font-change-xetex with font-change}{font-change-xetex with font-change}The text font changing capabilities of \code{font-change-xetex} can be combined with the package \code{font-change}~\cite{dhawan_font-change-3} which can change both math and text fonts. A font-changing macro from \code{font-change} has to be declared before the definitions of \code{font-change-xetex} so that the math font is chosen from \code{font-change} and the text font is selected by \code{font-change-xetex}. The definition \code{\bsl mymathfont} can be used to change some math fonts as well. The following example shows~this. + +\bs +\vbox{\hrule\hbox{\vrule\hbox{\leftskip7mm\rightskip7mm +\vbox{\vskip0.5\baselineskip \parindent=0pt +{\verbatim +\mysanzfont{Calibri}{11}{:+pnum:+lnum}% To use Calibri as the sans serif font +\input font_kp% From the package font-change; math fonts compatible with Chaparral Pro +\myzfont{Minion Pro}{10}{:+pnum:+lnum}% To use Minion Pro as the main font +\mymathfont{Minion Pro}{10}% To use Minion Pro for some math +\centerline{\sanstwelvecapsbf Text \& Math Font Test} +\bigskip +The text font is Minion Pro, most math is in Kp font, and some math is in Minion Pro. \TeX's Kp fonts go very well with many fonts like Warnock Pro, Adobe Garamond Pro, Minion Pro, etc. The text typed below shows how harmonious the mix of Minion Pro and Kp fonts is. +$$ +\Psi(x) = 173x^2 + 22\cos(x) + \Gamma(x) +$$ +|endverbatim +} +\vskip0.5\baselineskip}\vrule}}\hrule} +\sk\cl{$\downarrow \downarrow \downarrow$}\sk +\vbox{\hrule\hbox{\vrule\hbox{\leftskip7mm\rightskip7mm +\vbox{\vskip0.5\baselineskip \parindent=0pt +{ +%\mysanzfont{Calibri}{11}{:+pnum:+lnum}% To use Calibri as the sans serif font +%\input font_kp% From the package font-change; math fonts compatible with Chaparral Pro +\myfont{Minion Pro}{10}{:+pnum:+lnum}% To use Minion Pro as the main font +\resetfontsize\mymathfont{Minion Pro}{10}% To use Minion Pro for some math +\centerline{\sanstwelvecapsbf Text \& Math Font Test} +\bigskip +The text font is Minion Pro, most math is in Kp font, and some math is in Minion Pro. \TeX's Kp fonts go very well with many fonts like Warnock Pro, Adobe Garamond Pro, Minion Pro, etc. The text typed below shows how harmonious the mix of Minion Pro and Kp fonts is. +$$ +\Psi(x) = 173x^2 + 22\cos(x) + \Gamma(x) +$$}\vskip0.5\baselineskip}\vrule}}\hrule} + +\bs +The following sample texts display some combinations of math fonts (\capstex\ fonts invoked using \code{font-change}) and text fonts ({\caps otf} or {\caps ttf} fonts invoked using \code{font-change-xetex}). + +\newpage \ \ms +\ii\includegraphics[scale=0.87]{font_samples_1.pdf} + +\newpage \ \ms +\ii\includegraphics[scale=0.87]{font_samples_2.pdf} + +\newpage \ \ms +\ii\includegraphics[scale=0.87]{font_samples_3.pdf} + +\newpage \ \ms +\ii\includegraphics[scale=0.87]{font_samples_4.pdf} + + + + + + + + + + + + + + + + + + + + + + +\newpage% +{\special{pdf: outline 1 << /Title (Bibliography)/Dest [@thispage /FitH @ypos ] >> }}% +\headline{}% +\centerline{\textcolor{sectioncolor}{\sanssixteenbf Bibliography}}% +{\definexref{Bibliography}{Bibliography}{}}% +\writetocentry{section}{\refs{Bibliography}}% +\bigskip\bigskip% + + + +\bibliographystyle{ieeetran} +\bibliography{c:/bib} +\footline{\cl{\folio}} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +\special{pdf: docinfo << /Author (Amit Raj Dhawan) +/Title (Macros to use OpenType and TrueType fonts with XeTeX) +/Creator(XeTeX: Based on TeX---The Genius of Knuth) +/Subject(Using system-installed fonts with XeTeX) +/Keywords(TeX, XeTeX, fonts, math font, text, maths font, font-change, font-change-xetex, OpenType, TrueType, hanging punctuation, Unicode characters, macro, macros)>>} + +\special{pdf: docview <</PageMode /UseOutlines>> } + + + + +\bye diff --git a/Master/texmf-dist/tex/xetex/font-change-xetex/font-change-xetex.tex b/Master/texmf-dist/tex/xetex/font-change-xetex/font-change-xetex.tex new file mode 100644 index 00000000000..8c2a04a0487 --- /dev/null +++ b/Master/texmf-dist/tex/xetex/font-change-xetex/font-change-xetex.tex @@ -0,0 +1,1135 @@ +% The author of this work is Amit Raj Dhawan. +% This work is licensed under the +% Creative Commons Attribution-ShareAlike 4.0 International License +% on April 07, 2016. For details visit: +% http://creativecommons.org/licenses/by-sa/4.0/. +% +\def\myfont#1#2#3{% The font can take even non-integer values in #2 +\XeTeXuseglyphmetrics=1% +\font\rm="#1:mapping=tex-text:+pnum:+onum:#3" at#2pt% +\font\it="#1/I:mapping=tex-text:+pnum:+onum:#3" at#2pt% +\font\bf="#1/B:mapping=tex-text:+pnum:+onum:#3" at#2pt% +\font\sl="#1:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at#2pt% +\font\caps="#1:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at#2pt% +c2sc could also be used but this is better +\font\itbf="#1/IB:mapping=tex-text:+pnum:+onum:#3" at#2pt% +\font\slbf="#1/B:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at#2pt% +\font\capsbf="#1/B:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at#2pt% +\font\capsit="#1/I:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at#2pt% +\font\capsitbf="#1/IB:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at#2pt% +\font\capssl="#1:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at#2pt% +\font\capsslbf="#1/B:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at#2pt% +\rm\fontss}% +% +% +% Introducing dimensions for font scaling +\newdimen\twentypointfont \twentypointfont=2pt +\newdimen\eighteenpointfont \eighteenpointfont=1.8pt +\newdimen\sixteenpointfont \sixteenpointfont=1.6pt +\newdimen\fourteenpointfont \fourteenpointfont=1.4pt +\newdimen\twelvepointfont \twelvepointfont=1.2pt +\newdimen\elevenpointfont \elevenpointfont=1.1pt +\newdimen\tenpointfont \tenpointfont=1pt +\newdimen\ninepointfont \ninepointfont=0.9pt +\newdimen\eightpointfont \eightpointfont=0.8pt +\newdimen\sevenpointfont \sevenpointfont=0.7pt +\newdimen\sixpointfont \sixpointfont=0.6pt +\newdimen\fivepointfont \fivepointfont=0.5pt +% +% +\def\myzfont#1#2#3{% #2 takes only integer values +\multiply\twentypointfont by #2% +\multiply\eighteenpointfont by #2% +\multiply\sixteenpointfont by #2% +\multiply\fourteenpointfont by #2% +\multiply\twelvepointfont by #2% +\multiply\elevenpointfont by #2% +\multiply\tenpointfont by #2% +\multiply\ninepointfont by #2% +\multiply\eightpointfont by #2% +\multiply\sevenpointfont by #2% +\multiply\sixpointfont by #2% +\multiply\fivepointfont by #2% +% +\XeTeXuseglyphmetrics=1% +% +% +\font\twentyrm="#1/S=20:mapping=tex-text:+pnum:+onum:#3" at\twentypointfont% +\font\twentyit="#1/I/S=20:mapping=tex-text:+pnum:+onum:#3" at\twentypointfont% +\font\twentybf="#1/S=20/B:mapping=tex-text:+pnum:+onum:#3" at\twentypointfont% +\font\twentysl="#1/S=20:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\twentypointfont% +\font\twentycaps="#1/S=20:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\twentypointfont% +c2sc could also be used but this is better +\font\twentyitbf="#1/S=20/IB:mapping=tex-text:+pnum:+onum:#3" at\twentypointfont% +\font\twentyslbf="#1/S=20/B:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\twentypointfont% +\font\twentycapsbf="#1/S=20/B:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\twentypointfont% +\font\twentycapsit="#1/S=20/I:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\twentypointfont% +\font\twentycapsitbf="#1/S=20/IB:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\twentypointfont% +\font\twentycapssl="#1/S=20:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\twentypointfont% +\font\twentycapsslbf="#1/S=20/B:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\twentypointfont% +% +% +\font\eighteenrm="#1/S=18:mapping=tex-text:+pnum:+onum:#3" at\eighteenpointfont% +\font\eighteenit="#1/S=18/I:mapping=tex-text:+pnum:+onum:#3" at\eighteenpointfont% +\font\eighteenbf="#1/S=18/B:mapping=tex-text:+pnum:+onum:#3" at\eighteenpointfont% +\font\eighteensl="#1/S=18:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\eighteenpointfont% +\font\eighteencaps="#1/S=18:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\eighteenpointfont% +c2sc could also be used but this is better +\font\eighteenitbf="#1/S=18/IB:mapping=tex-text:+pnum:+onum:#3" at\eighteenpointfont% +\font\eighteenslbf="#1/S=18/B:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\eighteenpointfont% +\font\eighteencapsbf="#1/S=18/B:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\eighteenpointfont% +\font\eighteencapsit="#1/S=18/I:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\eighteenpointfont% +\font\eighteencapsitbf="#1/S=18/IB:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\eighteenpointfont% +\font\eighteencapssl="#1/S=18:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\eighteenpointfont% +\font\eighteencapsslbf="#1/S=18/B:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\eighteenpointfont% +% +% +\font\sixteenrm="#1/S=16:mapping=tex-text:+pnum:+onum:#3" at\sixteenpointfont% +\font\sixteenit="#1/S=16/I:mapping=tex-text:+pnum:+onum:#3" at\sixteenpointfont% +\font\sixteenbf="#1/S=16/B:mapping=tex-text:+pnum:+onum:#3" at\sixteenpointfont% +\font\sixteensl="#1/S=16:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\sixteenpointfont% +\font\sixteencaps="#1/S=16:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\sixteenpointfont% +c2sc could also be used but this is better +\font\sixteenitbf="#1/S=16/IB:mapping=tex-text:+pnum:+onum:#3" at\sixteenpointfont% +\font\sixteenslbf="#1/S=16/B:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\sixteenpointfont% +\font\sixteencapsbf="#1/S=16/B:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\sixteenpointfont% +\font\sixteencapsit="#1/S=16/I:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\sixteenpointfont% +\font\sixteencapsitbf="#1/S=16/IB:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\sixteenpointfont% +\font\sixteencapssl="#1/S=16:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\sixteenpointfont% +\font\sixteencapsslbf="#1/S=16/B:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\sixteenpointfont% +% +% +\font\fourteenrm="#1/S=14:mapping=tex-text:+pnum:+onum:#3" at\fourteenpointfont% +\font\fourteenit="#1/S=14/I:mapping=tex-text:+pnum:+onum:#3" at\fourteenpointfont% +\font\fourteenbf="#1/S=14/B:mapping=tex-text:+pnum:+onum:#3" at\fourteenpointfont% +\font\fourteensl="#1/S=14:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\fourteenpointfont% +\font\fourteencaps="#1/S=14:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\fourteenpointfont% +c2sc could also be used but this is better +\font\fourteenitbf="#1/S=14/IB:mapping=tex-text:+pnum:+onum:#3" at\fourteenpointfont% +\font\fourteenslbf="#1/S=14/B:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\fourteenpointfont% +\font\fourteencapsbf="#1/S=14/B:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\fourteenpointfont% +\font\fourteencapsit="#1/S=14/I:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\fourteenpointfont% +\font\fourteencapsitbf="#1/S=14/IB:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\fourteenpointfont% +\font\fourteencapssl="#1/S=14:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\fourteenpointfont% +\font\fourteencapsslbf="#1/S=14/B:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\fourteenpointfont% +% +% +\font\twelverm="#1/S=12:mapping=tex-text:+pnum:+onum:#3" at\twelvepointfont% +\font\twelveit="#1/S=12/I:mapping=tex-text:+pnum:+onum:#3" at\twelvepointfont% +\font\twelvebf="#1/S=12/B:mapping=tex-text:+pnum:+onum:#3" at\twelvepointfont% +\font\twelvesl="#1/S=12:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\twelvepointfont% +\font\twelvecaps="#1/S=12:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\twelvepointfont% +c2sc could also be used but this is better +\font\twelveitbf="#1/S=12/IB:mapping=tex-text:+pnum:+onum:#3" at\twelvepointfont% +\font\twelveslbf="#1/S=12/B:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\twelvepointfont% +\font\twelvecapsbf="#1/S=12/B:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\twelvepointfont% +\font\twelvecapsit="#1/S=12/I:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\twelvepointfont% +\font\twelvecapsitbf="#1/S=12/IB:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\twelvepointfont% +\font\twelvecapssl="#1/S=12:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\twelvepointfont% +\font\twelvecapsslbf="#1/S=12/B:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\twelvepointfont% +% +% +\font\elevenrm="#1/S=11:mapping=tex-text:+pnum:+onum:#3" at\elevenpointfont% +\font\elevenit="#1/S=11/I:mapping=tex-text:+pnum:+onum:#3" at\elevenpointfont% +\font\elevenbf="#1/S=11/B:mapping=tex-text:+pnum:+onum:#3" at\elevenpointfont% +\font\elevensl="#1/S=11:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\elevenpointfont% +\font\elevencaps="#1/S=11:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\elevenpointfont% +c2sc could also be used but this is better +\font\elevenitbf="#1/S=11/IB:mapping=tex-text:+pnum:+onum:#3" at\elevenpointfont% +\font\elevenslbf="#1/S=11/B:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\elevenpointfont% +\font\elevencapsbf="#1/S=11/B:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\elevenpointfont% +\font\elevencapsit="#1/S=11/I:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\elevenpointfont% +\font\elevencapsitbf="#1/S=11/IB:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\elevenpointfont% +\font\elevencapssl="#1/S=11:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\elevenpointfont% +\font\elevencapsslbf="#1/S=11/B:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\elevenpointfont% +% +% +\font\rm="#1/S=10:mapping=tex-text:+pnum:+onum:#3" at\tenpointfont% +\font\it="#1/S=10/I:mapping=tex-text:+pnum:+onum:#3" at\tenpointfont% +\font\bf="#1/S=10/B:mapping=tex-text:+pnum:+onum:#3" at\tenpointfont% +\font\sl="#1/S=10:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\tenpointfont% +\font\caps="#1/S=10:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\tenpointfont% +c2sc could also be used but this is better +\font\itbf="#1/S=10/IB:mapping=tex-text:+pnum:+onum:#3" at\tenpointfont% +\font\slbf="#1/S=10/B:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\tenpointfont% +\font\capsbf="#1/S=10/B:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\tenpointfont% +\font\capsit="#1/S=10/I:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\tenpointfont% +\font\capsitbf="#1/S=10/IB:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\tenpointfont% +\font\capssl="#1/S=10:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\tenpointfont% +\font\capsslbf="#1/S=10/B:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\tenpointfont% +% +% +\font\ninerm="#1/S=9:mapping=tex-text:+pnum:+onum:#3" at\ninepointfont% +\font\nineit="#1/S=9/I:mapping=tex-text:+pnum:+onum:#3" at\ninepointfont% +\font\ninebf="#1/S=9/B:mapping=tex-text:+pnum:+onum:#3" at\ninepointfont% +\font\ninesl="#1/S=9:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\ninepointfont% +\font\ninecaps="#1/S=9:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\ninepointfont% +c2sc could also be used but this is better +\font\nineitbf="#1/S=9/IB:mapping=tex-text:+pnum:+onum:#3" at\ninepointfont% +\font\nineslbf="#1/S=9/B:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\ninepointfont% +\font\ninecapsbf="#1/S=9/B:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\ninepointfont% +\font\ninecapsit="#1/S=9/I:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\ninepointfont% +\font\ninecapsitbf="#1/S=9/IB:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\ninepointfont% +\font\ninecapssl="#1/S=9:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\ninepointfont% +\font\ninecapsslbf="#1/S=9/B:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\ninepointfont% +% +% +\font\eightrm="#1/S=8:mapping=tex-text:+pnum:+onum:#3" at\eightpointfont% +\font\eightit="#1/S=8/I:mapping=tex-text:+pnum:+onum:#3" at\eightpointfont% +\font\eightbf="#1/S=8/B:mapping=tex-text:+pnum:+onum:#3" at\eightpointfont% +\font\eightsl="#1/S=8:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\eightpointfont% +\font\eightcaps="#1/S=8:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\eightpointfont% +c2sc could also be used but this is better +\font\eightitbf="#1/S=8/IB:mapping=tex-text:+pnum:+onum:#3" at\eightpointfont% +\font\eightslbf="#1/S=8/B:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\eightpointfont% +\font\eightcapsbf="#1/S=8/B:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\eightpointfont% +\font\eightcapsit="#1/S=8/I:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\eightpointfont% +\font\eightcapsitbf="#1/S=8/IB:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\eightpointfont% +\font\eightcapssl="#1/S=8:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\eightpointfont% +\font\eightcapsslbf="#1/S=8/B:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\eightpointfont% +% +% +\font\sevenrm="#1/S=7:mapping=tex-text:+pnum:+onum:#3" at\sevenpointfont% +\font\sevenit="#1/S=7/I:mapping=tex-text:+pnum:+onum:#3" at\sevenpointfont% +\font\sevenbf="#1/S=7/B:mapping=tex-text:+pnum:+onum:#3" at\sevenpointfont% +\font\sevensl="#1/S=7:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\sevenpointfont% +\font\sevencaps="#1/S=7:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\sevenpointfont% +c2sc could also be used but this is better +\font\sevenitbf="#1/S=7/IB:mapping=tex-text:+pnum:+onum:#3" at\sevenpointfont% +\font\sevenslbf="#1/S=7/B:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\sevenpointfont% +\font\sevencapsbf="#1/S=7/B:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\sevenpointfont% +\font\sevencapsit="#1/S=7/I:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\sevenpointfont% +\font\sevencapsitbf="#1/S=7/IB:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\sevenpointfont% +\font\sevencapssl="#1/S=7:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\sevenpointfont% +\font\sevencapsslbf="#1/S=7/B:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\sevenpointfont% +% +% +\font\sixrm="#1/S=6:mapping=tex-text:+pnum:+onum:#3" at\sixpointfont% +\font\sixit="#1/S=6/I:mapping=tex-text:+pnum:+onum:#3" at\sixpointfont% +\font\sixbf="#1/S=6/B:mapping=tex-text:+pnum:+onum:#3" at\sixpointfont% +\font\sixsl="#1/S=6:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\sixpointfont% +\font\sixcaps="#1/S=6:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\sixpointfont% +c2sc could also be used but this is better +\font\sixitbf="#1/S=6/IB:mapping=tex-text:+pnum:+onum:#3" at\sixpointfont% +\font\sixslbf="#1/S=6/B:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\sixpointfont% +\font\sixcapsbf="#1/S=6/B:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\sixpointfont% +\font\sixcapsit="#1/S=6/I:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\sixpointfont% +\font\sixcapsitbf="#1/S=6/IB:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\sixpointfont% +\font\sixcapssl="#1/S=6:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\sixpointfont% +\font\sixcapsslbf="#1/S=6/B:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\sixpointfont% +% +% +\font\fiverm="#1/S=5:mapping=tex-text:+pnum:+onum:#3" at\fivepointfont% +\font\fiveit="#1/S=5/I:mapping=tex-text:+pnum:+onum:#3" at\fivepointfont% +\font\fivebf="#1/S=5/B:mapping=tex-text:+pnum:+onum:#3" at\fivepointfont% +\font\fivesl="#1/S=5:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\fivepointfont% +\font\fivecaps="#1/S=5:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\fivepointfont% +c2sc could also be used but this is better +\font\fiveitbf="#1/S=5/IB:mapping=tex-text:+pnum:+onum:#3" at\fivepointfont% +\font\fiveslbf="#1/S=5/B:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\fivepointfont% +\font\fivecapsbf="#1/S=5/B:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\fivepointfont% +\font\fivecapsit="#1/S=5/I:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\fivepointfont% +\font\fivecapsitbf="#1/S=5/IB:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\fivepointfont% +\font\fivecapssl="#1/S=5:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\fivepointfont% +\font\fivecapsslbf="#1/S=5/B:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\fivepointfont% +% +% +\divide\twentypointfont by #2% +\divide\eighteenpointfont by #2% +\divide\sixteenpointfont by #2% +\divide\fourteenpointfont by #2% +\divide\twelvepointfont by #2% +\divide\elevenpointfont by #2% +\divide\tenpointfont by #2% +\divide\ninepointfont by #2% +\divide\eightpointfont by #2% +\divide\sevenpointfont by #2% +\divide\sixpointfont by #2% +\divide\fivepointfont by #2% +% +\rm\fontss}% +% +% +% +% +\def\mysanzfont#1#2#3{% #2 takes only integer values +\multiply\twentypointfont by #2% +\multiply\eighteenpointfont by #2% +\multiply\sixteenpointfont by #2% +\multiply\fourteenpointfont by #2% +\multiply\twelvepointfont by #2% +\multiply\elevenpointfont by #2% +\multiply\tenpointfont by #2% +\multiply\ninepointfont by #2% +\multiply\eightpointfont by #2% +\multiply\sevenpointfont by #2% +\multiply\sixpointfont by #2% +\multiply\fivepointfont by #2% +% +\XeTeXuseglyphmetrics=1% +% +% +\font\sanstwentyrm="#1/S=20:mapping=tex-text:+pnum:+onum:#3" at\twentypointfont% +\font\sanstwentyit="#1/S=20/I:mapping=tex-text:+pnum:+onum:#3" at\twentypointfont% +\font\sanstwentybf="#1/S=20/B:mapping=tex-text:+pnum:+onum:#3" at\twentypointfont% +\font\sanstwentysl="#1/S=20:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\twentypointfont% +\font\sanstwentycaps="#1/S=20:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\twentypointfont% +c2sc could also be used but this is better +\font\sanstwentyitbf="#1/S=20/IB:mapping=tex-text:+pnum:+onum:#3" at\twentypointfont% +\font\sanstwentyslbf="#1/S=20/B:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\twentypointfont% +\font\sanstwentycapsbf="#1/S=20/B:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\twentypointfont% +\font\sanstwentycapsit="#1/S=20/I:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\twentypointfont% +\font\sanstwentycapsitbf="#1/S=20/IB:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\twentypointfont% +\font\sanstwentycapssl="#1/S=20:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\twentypointfont% +\font\sanstwentycapsslbf="#1/S=20/B:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\twentypointfont% +% +% +\font\sanseighteenrm="#1/S=18:mapping=tex-text:+pnum:+onum:#3" at\eighteenpointfont% +\font\sanseighteenit="#1/S=18/I:mapping=tex-text:+pnum:+onum:#3" at\eighteenpointfont% +\font\sanseighteenbf="#1/S=18/B:mapping=tex-text:+pnum:+onum:#3" at\eighteenpointfont% +\font\sanseighteensl="#1/S=18:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\eighteenpointfont% +\font\sanseighteencaps="#1/S=18:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\eighteenpointfont% +c2sc could also be used but this is better +\font\sanseighteenitbf="#1/S=18/IB:mapping=tex-text:+pnum:+onum:#3" at\eighteenpointfont% +\font\sanseighteenslbf="#1/S=18/B:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\eighteenpointfont% +\font\sanseighteencapsbf="#1/S=18/B:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\eighteenpointfont% +\font\sanseighteencapsit="#1/S=18/I:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\eighteenpointfont% +\font\sanseighteencapsitbf="#1/S=18/IB:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\eighteenpointfont% +\font\sanseighteencapssl="#1/S=18:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\eighteenpointfont% +\font\sanseighteencapsslbf="#1/S=18/B:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\eighteenpointfont% +% +% +\font\sanssixteenrm="#1/S=16:mapping=tex-text:+pnum:+onum:#3" at\sixteenpointfont% +\font\sanssixteenit="#1/S=16/I:mapping=tex-text:+pnum:+onum:#3" at\sixteenpointfont% +\font\sanssixteenbf="#1/S=16/B:mapping=tex-text:+pnum:+onum:#3" at\sixteenpointfont% +\font\sanssixteensl="#1/S=16:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\sixteenpointfont% +\font\sanssixteencaps="#1/S=16:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\sixteenpointfont% +c2sc could also be used but this is better +\font\sanssixteenitbf="#1/S=16/IB:mapping=tex-text:+pnum:+onum:#3" at\sixteenpointfont% +\font\sanssixteenslbf="#1/S=16/B:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\sixteenpointfont% +\font\sanssixteencapsbf="#1/S=16/B:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\sixteenpointfont% +\font\sanssixteencapsit="#1/S=16/I:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\sixteenpointfont% +\font\sanssixteencapsitbf="#1/S=16/IB:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\sixteenpointfont% +\font\sanssixteencapssl="#1/S=16:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\sixteenpointfont% +\font\sanssixteencapsslbf="#1/S=16/B:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\sixteenpointfont% +% +% +\font\sansfourteenrm="#1/S=14:mapping=tex-text:+pnum:+onum:#3" at\fourteenpointfont% +\font\sansfourteenit="#1/S=14/I:mapping=tex-text:+pnum:+onum:#3" at\fourteenpointfont% +\font\sansfourteenbf="#1/S=14/B:mapping=tex-text:+pnum:+onum:#3" at\fourteenpointfont% +\font\sansfourteensl="#1/S=14:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\fourteenpointfont% +\font\sansfourteencaps="#1/S=14:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\fourteenpointfont% +c2sc could also be used but this is better +\font\sansfourteenitbf="#1/S=14/IB:mapping=tex-text:+pnum:+onum:#3" at\fourteenpointfont% +\font\sansfourteenslbf="#1/S=14/B:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\fourteenpointfont% +\font\sansfourteencapsbf="#1/S=14/B:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\fourteenpointfont% +\font\sansfourteencapsit="#1/S=14/I:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\fourteenpointfont% +\font\sansfourteencapsitbf="#1/S=14/IB:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\fourteenpointfont% +\font\sansfourteencapssl="#1/S=14:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\fourteenpointfont% +\font\sansfourteencapsslbf="#1/S=14/B:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\fourteenpointfont% +% +% +\font\sanstwelverm="#1/S=12:mapping=tex-text:+pnum:+onum:#3" at\twelvepointfont% +\font\sanstwelveit="#1/S=12/I:mapping=tex-text:+pnum:+onum:#3" at\twelvepointfont% +\font\sanstwelvebf="#1/S=12/B:mapping=tex-text:+pnum:+onum:#3" at\twelvepointfont% +\font\sanstwelvesl="#1/S=12:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\twelvepointfont% +\font\sanstwelvecaps="#1/S=12:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\twelvepointfont% +c2sc could also be used but this is better +\font\sanstwelveitbf="#1/S=12/IB:mapping=tex-text:+pnum:+onum:#3" at\twelvepointfont% +\font\sanstwelveslbf="#1/S=12/B:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\twelvepointfont% +\font\sanstwelvecapsbf="#1/S=12/B:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\twelvepointfont% +\font\sanstwelvecapsit="#1/S=12/I:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\twelvepointfont% +\font\sanstwelvecapsitbf="#1/S=12/IB:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\twelvepointfont% +\font\sanstwelvecapssl="#1/S=12:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\twelvepointfont% +\font\sanstwelvecapsslbf="#1/S=12/B:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\twelvepointfont% +% +% +\font\sanselevenrm="#1/S=11:mapping=tex-text:+pnum:+onum:#3" at\elevenpointfont% +\font\sanselevenit="#1/S=11/I:mapping=tex-text:+pnum:+onum:#3" at\elevenpointfont% +\font\sanselevenbf="#1/S=11/B:mapping=tex-text:+pnum:+onum:#3" at\elevenpointfont% +\font\sanselevensl="#1/S=11:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\elevenpointfont% +\font\sanselevencaps="#1/S=11:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\elevenpointfont% +c2sc could also be used but this is better +\font\sanselevenitbf="#1/S=11/IB:mapping=tex-text:+pnum:+onum:#3" at\elevenpointfont% +\font\sanselevenslbf="#1/S=11/B:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\elevenpointfont% +\font\sanselevencapsbf="#1/S=11/B:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\elevenpointfont% +\font\sanselevencapsit="#1/S=11/I:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\elevenpointfont% +\font\sanselevencapsitbf="#1/S=11/IB:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\elevenpointfont% +\font\sanselevencapssl="#1/S=11:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\elevenpointfont% +\font\sanselevencapsslbf="#1/S=11/B:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\elevenpointfont% +% +% +\font\sansrm="#1/S=10:mapping=tex-text:+pnum:+onum:#3" at\tenpointfont% +\font\sansit="#1/S=10/I:mapping=tex-text:+pnum:+onum:#3" at\tenpointfont% +\font\sansbf="#1/S=10/B:mapping=tex-text:+pnum:+onum:#3" at\tenpointfont% +\font\sanssl="#1/S=10:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\tenpointfont% +\font\sanscaps="#1/S=10:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\tenpointfont% +c2sc could also be used but this is better +\font\sansitbf="#1/S=10/IB:mapping=tex-text:+pnum:+onum:#3" at\tenpointfont% +\font\sansslbf="#1/S=10/B:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\tenpointfont% +\font\sanscapsbf="#1/S=10/B:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\tenpointfont% +\font\sanscapsit="#1/S=10/I:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\tenpointfont% +\font\sanscapsitbf="#1/S=10/IB:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\tenpointfont% +\font\sanscapssl="#1/S=10:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\tenpointfont% +\font\sanscapsslbf="#1/S=10/B:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\tenpointfont% +% +% +\font\sansninerm="#1/S=9:mapping=tex-text:+pnum:+onum:#3" at\ninepointfont% +\font\sansnineit="#1/S=9/I:mapping=tex-text:+pnum:+onum:#3" at\ninepointfont% +\font\sansninebf="#1/S=9/B:mapping=tex-text:+pnum:+onum:#3" at\ninepointfont% +\font\sansninesl="#1/S=9:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\ninepointfont% +\font\sansninecaps="#1/S=9:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\ninepointfont% +c2sc could also be used but this is better +\font\sansnineitbf="#1/S=9/IB:mapping=tex-text:+pnum:+onum:#3" at\ninepointfont% +\font\sansnineslbf="#1/S=9/B:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\ninepointfont% +\font\sansninecapsbf="#1/S=9/B:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\ninepointfont% +\font\sansninecapsit="#1/S=9/I:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\ninepointfont% +\font\sansninecapsitbf="#1/S=9/IB:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\ninepointfont% +\font\sansninecapssl="#1/S=9:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\ninepointfont% +\font\sansninecapsslbf="#1/S=9/B:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\ninepointfont% +% +% +\font\sanseightrm="#1/S=8:mapping=tex-text:+pnum:+onum:#3" at\eightpointfont% +\font\sanseightit="#1/S=8/I:mapping=tex-text:+pnum:+onum:#3" at\eightpointfont% +\font\sanseightbf="#1/S=8/B:mapping=tex-text:+pnum:+onum:#3" at\eightpointfont% +\font\sanseightsl="#1/S=8:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\eightpointfont% +\font\sanseightcaps="#1/S=8:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\eightpointfont% +c2sc could also be used but this is better +\font\sanseightitbf="#1/S=8/IB:mapping=tex-text:+pnum:+onum:#3" at\eightpointfont% +\font\sanseightslbf="#1/S=8/B:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\eightpointfont% +\font\sanseightcapsbf="#1/S=8/B:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\eightpointfont% +\font\sanseightcapsit="#1/S=8/I:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\eightpointfont% +\font\sanseightcapsitbf="#1/S=8/IB:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\eightpointfont% +\font\sanseightcapssl="#1/S=8:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\eightpointfont% +\font\sanseightcapsslbf="#1/S=8/B:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\eightpointfont% +% +% +\font\sanssevenrm="#1/S=7:mapping=tex-text:+pnum:+onum:#3" at\sevenpointfont% +\font\sanssevenit="#1/S=7/I:mapping=tex-text:+pnum:+onum:#3" at\sevenpointfont% +\font\sanssevenbf="#1/S=7/B:mapping=tex-text:+pnum:+onum:#3" at\sevenpointfont% +\font\sanssevensl="#1/S=7:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\sevenpointfont% +\font\sanssevencaps="#1/S=7:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\sevenpointfont% +c2sc could also be used but this is better +\font\sanssevenitbf="#1/S=7/IB:mapping=tex-text:+pnum:+onum:#3" at\sevenpointfont% +\font\sanssevenslbf="#1/S=7/B:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\sevenpointfont% +\font\sanssevencapsbf="#1/S=7/B:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\sevenpointfont% +\font\sanssevencapsit="#1/S=7/I:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\sevenpointfont% +\font\sanssevencapsitbf="#1/S=7/IB:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\sevenpointfont% +\font\sanssevencapssl="#1/S=7:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\sevenpointfont% +\font\sanssevencapsslbf="#1/S=7/B:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\sevenpointfont% +% +% +\font\sanssixrm="#1/S=6:mapping=tex-text:+pnum:+onum:#3" at\sixpointfont% +\font\sanssixit="#1/S=6/I:mapping=tex-text:+pnum:+onum:#3" at\sixpointfont% +\font\sanssixbf="#1/S=6/B:mapping=tex-text:+pnum:+onum:#3" at\sixpointfont% +\font\sanssixsl="#1/S=6:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\sixpointfont% +\font\sanssixcaps="#1/S=6:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\sixpointfont% +c2sc could also be used but this is better +\font\sanssixitbf="#1/S=6/IB:mapping=tex-text:+pnum:+onum:#3" at\sixpointfont% +\font\sanssixslbf="#1/S=6/B:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\sixpointfont% +\font\sanssixcapsbf="#1/S=6/B:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\sixpointfont% +\font\sanssixcapsit="#1/S=6/I:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\sixpointfont% +\font\sanssixcapsitbf="#1/S=6/IB:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\sixpointfont% +\font\sanssixcapssl="#1/S=6:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\sixpointfont% +\font\sanssixcapsslbf="#1/S=6/B:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\sixpointfont% +% +% +\font\sansfiverm="#1/S=5:mapping=tex-text:+pnum:+onum:#3" at\fivepointfont% +\font\sansfiveit="#1/S=5/I:mapping=tex-text:+pnum:+onum:#3" at\fivepointfont% +\font\sansfivebf="#1/S=5/B:mapping=tex-text:+pnum:+onum:#3" at\fivepointfont% +\font\sansfivesl="#1/S=5:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\fivepointfont% +\font\sansfivecaps="#1/S=5:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\fivepointfont% +c2sc could also be used but this is better +\font\sansfiveitbf="#1/S=5/IB:mapping=tex-text:+pnum:+onum:#3" at\fivepointfont% +\font\sansfiveslbf="#1/S=5/B:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\fivepointfont% +\font\sansfivecapsbf="#1/S=5/B:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\fivepointfont% +\font\sansfivecapsit="#1/S=5/I:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\fivepointfont% +\font\sansfivecapsitbf="#1/S=5/IB:+smcp:letterspace=2:mapping=tex-text:+pnum:+onum:#3" at\fivepointfont% +\font\sansfivecapssl="#1/S=5:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\fivepointfont% +\font\sansfivecapsslbf="#1/S=5/B:+smcp:letterspace=2:slant=0.18:mapping=tex-text:+pnum:+onum:#3" at\fivepointfont% +% +\divide\twentypointfont by #2% +\divide\eighteenpointfont by #2% +\divide\sixteenpointfont by #2% +\divide\fourteenpointfont by #2% +\divide\twelvepointfont by #2% +\divide\elevenpointfont by #2% +\divide\tenpointfont by #2% +\divide\ninepointfont by #2% +\divide\eightpointfont by #2% +\divide\sevenpointfont by #2% +\divide\sixpointfont by #2% +\divide\fivepointfont by #2% +% +% +%\sansrm +}% +% +% +\def\mymathfont#1#2{% Towards Unicode math. *Should be declared after \hangpun +\multiply\twentypointfont by #2% +\multiply\eighteenpointfont by #2% +\multiply\sixteenpointfont by #2% +\multiply\fourteenpointfont by #2% +\multiply\twelvepointfont by #2% +\multiply\elevenpointfont by #2% +\multiply\tenpointfont by #2% +\multiply\ninepointfont by #2% +\multiply\eightpointfont by #2% +\multiply\sevenpointfont by #2% +\multiply\sixpointfont by #2% +\multiply\fivepointfont by #2% +% To see math romans in the declared font. E.g. 12 and $12$ will be in the same font +\font\tenrm="#1/S=10:mapping=tex-text:+pnum:+lnum" at\tenpointfont% +\font\sevenrm="#1/S=7:mapping=tex-text:+pnum:+lnum" at\sevenpointfont% +\font\fiverm="#1/S=5:mapping=tex-text:+pnum:+lnum" at\fivepointfont% +\textfont0=\tenrm% +\scriptfont0=\sevenrm% +\scriptscriptfont0=\fiverm% +\def\rm{\fam=0 \tenrm}% +% +% To cope with misnumbered glyphs such as theta of TeX's math italics family +\def\Gamma{{\rm\mathord Γ}}% +\def\Delta{{\rm\mathord Δ}}% +\def\Theta{{\rm\mathord Θ}}% +\def\Lambda{{\rm\mathord Λ}}% +\def\Xi{{\rm\mathord Ξ}}% +\def\Pi{{\rm\mathord Π}}% +\def\Sigma{{\rm\mathord Σ}}% +\def\Upsilon{{\rm\mathord ϒ}}% +\def\Phi{{\rm\mathord Φ}}% +\def\Psi{{\rm\mathord Ψ}}% +\def\Omega{{\rm\mathord Ω}}% +\def\hat{\mathaccent"745E }% Default is \def\hat{\mathaccent"705E } +% changed it because \mymathfont changes the roman regular font, i.e., family 0 +% +%\def\alpha{{\mathord α}}% +%\def\eta{{\mathord η}}% +%\def\nu{{\mathord ν}}% +%\def\sigma{{\mathord σ}}% +%\def\beta{{\mathord β}}% +%\def\theta{{\mathord θ}}% +%\def\xi{{\mathord ξ}}% +%\def\varsigma{{\mathord ς}}% +%\def\omega{{\mathord ω}}% +%\def\gamma{{{\mathord γ}}}% +%\def\vartheta{{\mathord ϑ}}% +%\def\tau{{\mathord τ}}% +%\def\delta{{\mathord δ}}% +%\def\iota{{\mathord ι}}% +%\def\pi{{\mathord π}}% +%\def\upsilon{{\mathord υ}}% +%\def\varGamma{{\mathord Γ}}% +%\def\epsilon{{\mathord ε}}% +%\def\kappa{{\mathord κ}}% +%%\def\varphi % did not figure out +%\def\phi{{\mathord φ}}% +%%\def\varepsilon{{\mathord % did not figure out +%\def\lambda{{\mathord λ}}% +%\def\rho{{\mathord ρ}}% +%\def\zeta{{\mathord ζ}}% +%\def\mu{{\mathord μ}}% +%\def\chi{{\mathord χ}}% +% +%\def\j{^^^^0237}% +%\def\function{ƒ}% +% +\def\mytilde{\mathchoice{\tenrm{\raise1ex\hbox{\char"7E}\kern-1.4ex}}% +{\tenrm{\raise1ex\hbox{\char"7E}\kern-1.37ex}}% +{\sevenrm{\raise1ex\hbox{\char"7E}\kern-1.37ex}}% +{\fiverm{\raise1ex\hbox{\char"7E}\kern-1.37ex}}}% Note that for \mytilde to work properly \input font_kp or \input font_xx should be included before \mymathfont. +}% +% +% +% +% +% +% For resetting the font size +\def\resetfontsize{\twentypointfont=2pt% +\eighteenpointfont=1.8pt% +\sixteenpointfont=1.6pt% +\fourteenpointfont=1.4pt% +\twelvepointfont=1.2pt% +\elevenpointfont=1.1pt% +\tenpointfont=1pt% +\ninepointfont=0.9pt% +\eightpointfont=0.8pt% +\sevenpointfont=0.7pt% +\sixpointfont=0.6pt% +\fivepointfont=0.5pt}% +% +% +% +% +% +% +\def\setprotcode#1{% + \XeTeXprotrudechars=1% + \rpcode#1 U"0021 226% exclamation mark + \rpcode#1 U"002C 226% comma + \rpcode#1 U"002D 350% hyphen + \rpcode#1 U"002E 226% full stop/period + \rpcode#1 U"003B 226% semicolon + \rpcode#1 U"003A 226% colon + \rpcode#1 U"003F 226% question mark + \lpcode#1 U"2018 216% left single quote + \rpcode#1 U"2019 216% right single quote + \lpcode#1 U"201C 366% left double quote + \rpcode#1 U"201D 366% right double quote + \rpcode#1 U"2013 350% en dash + \rpcode#1 U"2014 350% em dash +}% +\def\hangpun{% +\setprotcode{\the\font}{}% +\setprotcode{\rm}{}% +\setprotcode{\it}{}% +\setprotcode{\sl}{}% +\setprotcode{\bf}{}% +\setprotcode{\itbf}{}% +\setprotcode{\slbf}{}% +\setprotcode{\caps}{}% +\setprotcode{\capsit}{}% +\setprotcode{\capssl}{}% +\setprotcode{\capsbf}{}% +\setprotcode{\capsitbf}{}% +\setprotcode{\capsslbf}{}% +\setprotcode{\fiverm}{}% +\setprotcode{\fiveit}{}% +\setprotcode{\fivesl}{}% +\setprotcode{\fivebf}{}% +\setprotcode{\fiveitbf}{}% +\setprotcode{\fiveslbf}{}% +\setprotcode{\fivecaps}{}% +\setprotcode{\fivecapsit}{}% +\setprotcode{\fivecapssl}{}% +\setprotcode{\fivecapsbf}{}% +\setprotcode{\fivecapsitbf}{}% +\setprotcode{\fivecapsslbf}{}% +\setprotcode{\sixrm}{}% +\setprotcode{\sixit}{}% +\setprotcode{\sixsl}{}% +\setprotcode{\sixbf}{}% +\setprotcode{\sixitbf}{}% +\setprotcode{\sixslbf}{}% +\setprotcode{\sixcaps}{}% +\setprotcode{\sixcapsit}{}% +\setprotcode{\sixcapssl}{}% +\setprotcode{\sixcapsbf}{}% +\setprotcode{\sixcapsitbf}{}% +\setprotcode{\sixcapsslbf}{}% +\setprotcode{\sevenrm}{}% +\setprotcode{\sevenit}{}% +\setprotcode{\sevensl}{}% +\setprotcode{\sevenbf}{}% +\setprotcode{\sevenitbf}{}% +\setprotcode{\sevenslbf}{}% +\setprotcode{\sevencaps}{}% +\setprotcode{\sevencapsit}{}% +\setprotcode{\sevencapssl}{}% +\setprotcode{\sevencapsbf}{}% +\setprotcode{\sevencapsitbf}{}% +\setprotcode{\sevencapsslbf}{}% +\setprotcode{\eightrm}{}% +\setprotcode{\eightit}{}% +\setprotcode{\eightsl}{}% +\setprotcode{\eightbf}{}% +\setprotcode{\eightitbf}{}% +\setprotcode{\eightslbf}{}% +\setprotcode{\eightcaps}{}% +\setprotcode{\eightcapsit}{}% +\setprotcode{\eightcapssl}{}% +\setprotcode{\eightcapsbf}{}% +\setprotcode{\eightcapsitbf}{}% +\setprotcode{\eightcapsslbf}{}% +\setprotcode{\ninerm}{}% +\setprotcode{\nineit}{}% +\setprotcode{\ninesl}{}% +\setprotcode{\ninebf}{}% +\setprotcode{\nineitbf}{}% +\setprotcode{\nineslbf}{}% +\setprotcode{\ninecaps}{}% +\setprotcode{\ninecapsit}{}% +\setprotcode{\ninecapssl}{}% +\setprotcode{\ninecapsbf}{}% +\setprotcode{\ninecapsitbf}{}% +\setprotcode{\ninecapsslbf}{}% +\setprotcode{\elevenrm}{}% +\setprotcode{\elevenit}{}% +\setprotcode{\elevensl}{}% +\setprotcode{\elevenbf}{}% +\setprotcode{\elevenitbf}{}% +\setprotcode{\elevenslbf}{}% +\setprotcode{\elevencaps}{}% +\setprotcode{\elevencapsit}{}% +\setprotcode{\elevencapssl}{}% +\setprotcode{\elevencapsbf}{}% +\setprotcode{\elevencapsitbf}{}% +\setprotcode{\elevencapsslbf}{}% +\setprotcode{\twelverm}{}% +\setprotcode{\twelveit}{}% +\setprotcode{\twelvesl}{}% +\setprotcode{\twelvebf}{}% +\setprotcode{\twelveitbf}{}% +\setprotcode{\twelveslbf}{}% +\setprotcode{\twelvecaps}{}% +\setprotcode{\twelvecapsit}{}% +\setprotcode{\twelvecapssl}{}% +\setprotcode{\twelvecapsbf}{}% +\setprotcode{\twelvecapsitbf}{}% +\setprotcode{\twelvecapsslbf}{}% +\setprotcode{\fourteenrm}{}% +\setprotcode{\fourteenit}{}% +\setprotcode{\fourteensl}{}% +\setprotcode{\fourteenbf}{}% +\setprotcode{\fourteenitbf}{}% +\setprotcode{\fourteenslbf}{}% +\setprotcode{\fourteencaps}{}% +\setprotcode{\fourteencapsit}{}% +\setprotcode{\fourteencapssl}{}% +\setprotcode{\fourteencapsbf}{}% +\setprotcode{\fourteencapsitbf}{}% +\setprotcode{\fourteencapsslbf}{}% +\setprotcode{\sixteenrm}{}% +\setprotcode{\sixteenit}{}% +\setprotcode{\sixteensl}{}% +\setprotcode{\sixteenbf}{}% +\setprotcode{\sixteenitbf}{}% +\setprotcode{\sixteenslbf}{}% +\setprotcode{\sixteencaps}{}% +\setprotcode{\sixteencapsit}{}% +\setprotcode{\sixteencapssl}{}% +\setprotcode{\sixteencapsbf}{}% +\setprotcode{\sixteencapsitbf}{}% +\setprotcode{\sixteencapsslbf}{}% +\setprotcode{\eighteenrm}{}% +\setprotcode{\eighteenit}{}% +\setprotcode{\eighteensl}{}% +\setprotcode{\eighteenbf}{}% +\setprotcode{\eighteenitbf}{}% +\setprotcode{\eighteenslbf}{}% +\setprotcode{\eighteencaps}{}% +\setprotcode{\eighteencapsit}{}% +\setprotcode{\eighteencapssl}{}% +\setprotcode{\eighteencapsbf}{}% +\setprotcode{\eighteencapsitbf}{}% +\setprotcode{\eighteencapsslbf}{}% +\setprotcode{\twentyrm}{}% +\setprotcode{\twentyit}{}% +\setprotcode{\twentysl}{}% +\setprotcode{\twentybf}{}% +\setprotcode{\twentyitbf}{}% +\setprotcode{\twentyslbf}{}% +\setprotcode{\twentycaps}{}% +\setprotcode{\twentycapsit}{}% +\setprotcode{\twentycapssl}{}% +\setprotcode{\twentycapsbf}{}% +\setprotcode{\twentycapsitbf}{}% +\setprotcode{\twentycapsslbf}{}% +}% +%{} needed after \setprotcode. If not when \fontss followed by number, will not print the %number. +% +\def\unsetprotcode#1{% + \XeTeXprotrudechars=1% + \rpcode#1 U"0021 0% exclamation mark + \rpcode#1 U"002C 0% comma + \rpcode#1 U"002D 0% hyphen + \rpcode#1 U"002E 0% full stop/period + \rpcode#1 U"003B 0% semicolon + \rpcode#1 U"003A 0% colon + \rpcode#1 U"003F 0% question mark + \lpcode#1 U"2018 0% left single quote + \rpcode#1 U"2019 0% right single quote + \lpcode#1 U"201C 0% left double quote + \rpcode#1 U"201D 0% right double quote + \rpcode#1 U"2013 0% en dash + \rpcode#1 U"2014 0% em dash +}% +\def\nohangpun{% +\unsetprotcode{\the\font}{}% +\unsetprotcode{\rm}{}% +\unsetprotcode{\it}{}% +\unsetprotcode{\sl}{}% +\unsetprotcode{\bf}{}% +\unsetprotcode{\itbf}{}% +\unsetprotcode{\slbf}{}% +\unsetprotcode{\caps}{}% +\unsetprotcode{\capsit}{}% +\unsetprotcode{\capssl}{}% +\unsetprotcode{\capsbf}{}% +\unsetprotcode{\capsitbf}{}% +\unsetprotcode{\capsslbf}{}% +\unsetprotcode{\fiverm}{}% +\unsetprotcode{\fiveit}{}% +\unsetprotcode{\fivesl}{}% +\unsetprotcode{\fivebf}{}% +\unsetprotcode{\fiveitbf}{}% +\unsetprotcode{\fiveslbf}{}% +\unsetprotcode{\fivecaps}{}% +\unsetprotcode{\fivecapsit}{}% +\unsetprotcode{\fivecapssl}{}% +\unsetprotcode{\fivecapsbf}{}% +\unsetprotcode{\fivecapsitbf}{}% +\unsetprotcode{\fivecapsslbf}{}% +\unsetprotcode{\sixrm}{}% +\unsetprotcode{\sixit}{}% +\unsetprotcode{\sixsl}{}% +\unsetprotcode{\sixbf}{}% +\unsetprotcode{\sixitbf}{}% +\unsetprotcode{\sixslbf}{}% +\unsetprotcode{\sixcaps}{}% +\unsetprotcode{\sixcapsit}{}% +\unsetprotcode{\sixcapssl}{}% +\unsetprotcode{\sixcapsbf}{}% +\unsetprotcode{\sixcapsitbf}{}% +\unsetprotcode{\sixcapsslbf}{}% +\unsetprotcode{\sevenrm}{}% +\unsetprotcode{\sevenit}{}% +\unsetprotcode{\sevensl}{}% +\unsetprotcode{\sevenbf}{}% +\unsetprotcode{\sevenitbf}{}% +\unsetprotcode{\sevenslbf}{}% +\unsetprotcode{\sevencaps}{}% +\unsetprotcode{\sevencapsit}{}% +\unsetprotcode{\sevencapssl}{}% +\unsetprotcode{\sevencapsbf}{}% +\unsetprotcode{\sevencapsitbf}{}% +\unsetprotcode{\sevencapsslbf}{}% +\unsetprotcode{\eightrm}{}% +\unsetprotcode{\eightit}{}% +\unsetprotcode{\eightsl}{}% +\unsetprotcode{\eightbf}{}% +\unsetprotcode{\eightitbf}{}% +\unsetprotcode{\eightslbf}{}% +\unsetprotcode{\eightcaps}{}% +\unsetprotcode{\eightcapsit}{}% +\unsetprotcode{\eightcapssl}{}% +\unsetprotcode{\eightcapsbf}{}% +\unsetprotcode{\eightcapsitbf}{}% +\unsetprotcode{\eightcapsslbf}{}% +\unsetprotcode{\ninerm}{}% +\unsetprotcode{\nineit}{}% +\unsetprotcode{\ninesl}{}% +\unsetprotcode{\ninebf}{}% +\unsetprotcode{\nineitbf}{}% +\unsetprotcode{\nineslbf}{}% +\unsetprotcode{\ninecaps}{}% +\unsetprotcode{\ninecapsit}{}% +\unsetprotcode{\ninecapssl}{}% +\unsetprotcode{\ninecapsbf}{}% +\unsetprotcode{\ninecapsitbf}{}% +\unsetprotcode{\ninecapsslbf}{}% +\unsetprotcode{\elevenrm}{}% +\unsetprotcode{\elevenit}{}% +\unsetprotcode{\elevensl}{}% +\unsetprotcode{\elevenbf}{}% +\unsetprotcode{\elevenitbf}{}% +\unsetprotcode{\elevenslbf}{}% +\unsetprotcode{\elevencaps}{}% +\unsetprotcode{\elevencapsit}{}% +\unsetprotcode{\elevencapssl}{}% +\unsetprotcode{\elevencapsbf}{}% +\unsetprotcode{\elevencapsitbf}{}% +\unsetprotcode{\elevencapsslbf}{}% +\unsetprotcode{\twelverm}{}% +\unsetprotcode{\twelveit}{}% +\unsetprotcode{\twelvesl}{}% +\unsetprotcode{\twelvebf}{}% +\unsetprotcode{\twelveitbf}{}% +\unsetprotcode{\twelveslbf}{}% +\unsetprotcode{\twelvecaps}{}% +\unsetprotcode{\twelvecapsit}{}% +\unsetprotcode{\twelvecapssl}{}% +\unsetprotcode{\twelvecapsbf}{}% +\unsetprotcode{\twelvecapsitbf}{}% +\unsetprotcode{\twelvecapsslbf}{}% +\unsetprotcode{\fourteenrm}{}% +\unsetprotcode{\fourteenit}{}% +\unsetprotcode{\fourteensl}{}% +\unsetprotcode{\fourteenbf}{}% +\unsetprotcode{\fourteenitbf}{}% +\unsetprotcode{\fourteenslbf}{}% +\unsetprotcode{\fourteencaps}{}% +\unsetprotcode{\fourteencapsit}{}% +\unsetprotcode{\fourteencapssl}{}% +\unsetprotcode{\fourteencapsbf}{}% +\unsetprotcode{\fourteencapsitbf}{}% +\unsetprotcode{\fourteencapsslbf}{}% +\unsetprotcode{\sixteenrm}{}% +\unsetprotcode{\sixteenit}{}% +\unsetprotcode{\sixteensl}{}% +\unsetprotcode{\sixteenbf}{}% +\unsetprotcode{\sixteenitbf}{}% +\unsetprotcode{\sixteenslbf}{}% +\unsetprotcode{\sixteencaps}{}% +\unsetprotcode{\sixteencapsit}{}% +\unsetprotcode{\sixteencapssl}{}% +\unsetprotcode{\sixteencapsbf}{}% +\unsetprotcode{\sixteencapsitbf}{}% +\unsetprotcode{\sixteencapsslbf}{}% +\unsetprotcode{\eighteenrm}{}% +\unsetprotcode{\eighteenit}{}% +\unsetprotcode{\eighteensl}{}% +\unsetprotcode{\eighteenbf}{}% +\unsetprotcode{\eighteenitbf}{}% +\unsetprotcode{\eighteenslbf}{}% +\unsetprotcode{\eighteencaps}{}% +\unsetprotcode{\eighteencapsit}{}% +\unsetprotcode{\eighteencapssl}{}% +\unsetprotcode{\eighteencapsbf}{}% +\unsetprotcode{\eighteencapsitbf}{}% +\unsetprotcode{\eighteencapsslbf}{}% +\unsetprotcode{\twentyrm}{}% +\unsetprotcode{\twentyit}{}% +\unsetprotcode{\twentysl}{}% +\unsetprotcode{\twentybf}{}% +\unsetprotcode{\twentyitbf}{}% +\unsetprotcode{\twentyslbf}{}% +\unsetprotcode{\twentycaps}{}% +\unsetprotcode{\twentycapsit}{}% +\unsetprotcode{\twentycapssl}{}% +\unsetprotcode{\twentycapsbf}{}% +\unsetprotcode{\twentycapsitbf}{}% +\unsetprotcode{\twentycapsslbf}{}% +}% +%{} needed after \setprotcode. If not when \fontss followed by number, will not print the number. +% +\def\fontss{\parindent=2em% +\baselineskip=2.8ex% +\spaceskip=0.30001em plus0.11em minus0.11em}% +% +% +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%% Special UNICODE Characters %%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\def\uAlpha{Α}% +\def\uBeta{Β}% +\def\uGamma{Γ}% +\def\uDelta{Δ}% +\def\uEpsilon{Ε}% +\def\uZeta{Ζ}% +\def\uEta{Η}% +\def\uTheta{Θ}% +\def\uIota{Ι}% +\def\uKappa{Κ}% +\def\uLambda{Λ}% +\def\uMu{Μ}% +\def\uNu{Ν}% +\def\uXi{Ξ}% +\def\uOmicron{Ο}% +\def\uPi{Π}% +\def\uRho{Ρ}% +\def\uSigma{Σ}% +\def\uTau{Τ}% +\def\uUpsilon{Υ}% +\def\uPhi{Φ}% +\def\uChi{Χ}% +\def\uPsi{Ψ}% +\def\uOmega{Ω}% +\def\ualpha{α}% +\def\ubeta{β}% +\def\ugamma{γ}% +\def\udelta{δ}% +\def\uepsilon{ε}% +\def\uzeta{ζ}% +\def\ueta{η}% +\def\utheta{θ}% +\def\uiota{ι}% +\def\ukappa{κ}% +\def\ulambda{λ}% +\def\umu{μ}% +\def\unu{ν}% +\def\uxi{ξ}% +\def\uomicron{ο}% +\def\upi{π}% +\def\urho{ρ}% +\def\usigmaf{ς}% +\def\usigma{σ}% +\def\utau{τ}% +\def\uupsilon{υ}% +\def\uphi{φ}% +\def\uchi{χ}% +\def\upsi{ψ}% +\def\uomega{ω}% +\def\uthetasym{ϑ}% +\def\uupsih{ϒ}% +\def\upiv{ϖ}% +\def\ubull{•}% +\def\uhellip{…}% +\def\uprime{′}% +\def\uPrime{″}% +\def\uoline{‾}% +\def\ufrasl{⁄}% +\def\uweierp{℘}% +\def\uimage{ℑ}% +\def\ureal{ℜ}% +\def\utrade{™}% +\def\ualefsym{ℵ}% +\def\ularr{←}% +\def\uuarr{↑}% +\def\urarr{→}% +\def\udarr{↓}% +\def\uharr{↔}% +\def\ucrarr{↵}% +\def\ulArr{⇐}% +\def\uuArr{⇑}% +\def\urArr{⇒}% +\def\udArr{⇓}% +\def\uhArr{⇔}% +\def\uforall{∀}% +\def\upart{∂}% +\def\uexist{∃}% +\def\uempty{∅}% +\def\unabla{∇}% +\def\uisin{∈}% +\def\unotin{∉}% +\def\uni{∋}% +\def\uprod{∏}% +\def\usum{∑}% +\def\uminus{−}% +\def\ulowast{∗}% +\def\uradic{√}% +\def\uprop{∝}% +\def\uinfin{∞}% +\def\uang{∠}% +\def\uand{∧}% +\def\uor{∨}% +\def\ucap{∩}% +\def\ucup{∪}% +\def\uint{∫}% +\def\uthere4{∴}% +\def\usim{∼}% +\def\ucong{≅}% +\def\uasymp{≈}% +\def\une{≠}% +\def\uequiv{≡}% +\def\ule{≤}% +\def\uge{≥}% +\def\usub{⊂}% +\def\usup{⊃}% +\def\unsub{⊄}% +\def\usube{⊆}% +\def\usupe{⊇}% +\def\uoplus{⊕}% +\def\uotimes{⊗}% +\def\uperp{⊥}% +\def\usdot{⋅}% +\def\ulceil{⌈}% +\def\urceil{⌉}% +\def\ulfloor{⌊}% +\def\urfloor{⌋}% +\def\ulang{⟨}% +\def\urang{⟩}% +\def\uloz{◊}% +\def\uspades{♠}% +\def\uclubs{♣}% +\def\uhearts{♥}% +\def\udiams{♦}% +\def\ufnof{ƒ}% +\def\uensp{ }% +\def\uemsp{ }% +\def\uthinsp{ }% +\def\uzwnj{}% +\def\uzwj{}% +\def\ulrm{}% +\def\urlm{}% +\def\undash{–}% +\def\umdash{—}% +\def\ulsquo{‘}% +\def\ursquo{’}% +\def\usbquo{‚}% +\def\uldquo{“}% +\def\urdquo{”}% +\def\ubdquo{„}% +\def\udagger{†}% +\def\uDagger{‡}% +\def\upermil{‰}% +\def\ulsaquo{‹}% +\def\ursaquo{›}% +\def\ueuro{€}% +\def\ucirc{ˆ}% +\def\utilde{˜}% +\def\uOElig{Œ}% +\def\uoelig{œ}% +\def\uScaron{Š}% +\def\uscaron{š}% +\def\uYuml{Ÿ}% +\def\uquot{"}% +\def\uamp{&}% +\def\uapos{'}% +\def\ult{<}% +\def\ugt{>}% +\def\unbsp{}% +\def\uiexcl{¡}% +\def\ucent{¢}% +\def\upound{£}% +\def\ucurren{¤}% +\def\uyen{¥}% +\def\ubrvbar{¦}% +\def\usect{§}% +\def\uuml{¨}% +\def\ucopy{©}% +\def\uordf{ª}% +\def\ulaquo{«}% +\def\unot{¬}% +\def\ushy{}% +\def\ureg{®}% +\def\umacr{¯}% +\def\udeg{°}% +\def\uplusmn{±}% +\def\usup2{²}% +\def\usup3{³}% +\def\uacute{´}% +\def\umicro{µ}% +\def\upara{¶}% +\def\umiddot{·}% +\def\ucedil{¸}% +\def\usup1{¹}% +\def\uordm{º}% +\def\uraquo{»}% +\def\ufrac14{¼}% +\def\ufrac12{½}% +\def\ufrac34{¾}% +\def\uiquest{¿}% +\def\uAgrave{À}% +\def\uAacute{Á}% +\def\uAcirc{Â}% +\def\uAtilde{Ã}% +\def\uAuml{Ä}% +\def\uAring{Å}% +\def\uAElig{Æ}% +\def\uCcedil{Ç}% +\def\uEgrave{È}% +\def\uEacute{É}% +\def\uEcirc{Ê}% +\def\uEuml{Ë}% +\def\uIgrave{Ì}% +\def\uIacute{Í}% +\def\uIcirc{Î}% +\def\uIuml{Ï}% +\def\uETH{Ð}% +\def\uNtilde{Ñ}% +\def\uOgrave{Ò}% +\def\uOacute{Ó}% +\def\uOcirc{Ô}% +\def\uOtilde{Õ}% +\def\uOuml{Ö}% +\def\utimes{×}% +\def\uOslash{Ø}% +\def\uUgrave{Ù}% +\def\uUacute{Ú}% +\def\uUcirc{Û}% +\def\uUuml{Ü}% +\def\uYacute{Ý}% +\def\uTHORN{Þ}% +\def\uszlig{ß}% +\def\uagrave{à}% +\def\uaacute{á}% +\def\uacirc{â}% +\def\uatilde{ã}% +\def\uauml{ä}% +\def\uaring{å}% +\def\uaelig{æ}% +\def\uccedil{ç}% +\def\uegrave{è}% +\def\ueacute{é}% +\def\uecirc{ê}% +\def\ueuml{ë}% +\def\uigrave{ì}% +\def\uiacute{í}% +\def\uicirc{î}% +\def\uiuml{ï}% +\def\ueth{ð}% +\def\untilde{ñ}% +\def\uograve{ò}% +\def\uoacute{ó}% +\def\uocirc{ô}% +\def\uotilde{õ}% +\def\uouml{ö}% +\def\udivide{÷}% +\def\uoslash{ø}% +\def\uugrave{ù}% +\def\uuacute{ú}% +\def\uucirc{û}% +\def\uuuml{ü}% +\def\uyacute{ý}% +\def\uthorn{þ}% +\def\uyuml{ÿ}% +\def\uhbar{ħ}% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ No newline at end of file diff --git a/Master/tlpkg/bin/tlpkg-ctan-check b/Master/tlpkg/bin/tlpkg-ctan-check index 5b421c39151..bb586509251 100755 --- a/Master/tlpkg/bin/tlpkg-ctan-check +++ b/Master/tlpkg/bin/tlpkg-ctan-check @@ -252,7 +252,7 @@ my @TLP_working = qw( fmp fmtcount fn2end fnbreak fncychap fncylab fnpara fnpct fntproof fnumprint foekfont foilhtml fonetika - fontawesome font-change fontaxes fontbook fontch fontinst + fontawesome font-change font-change-xetex fontaxes fontbook fontch fontinst fontmfizz fontools fonts-tlwg fontspec fonttable fontwrap footbib footmisc footnotebackref footnoterange footnpag diff --git a/Master/tlpkg/libexec/ctan2tds b/Master/tlpkg/libexec/ctan2tds index 4e58670b3ed..2002a872e06 100755 --- a/Master/tlpkg/libexec/ctan2tds +++ b/Master/tlpkg/libexec/ctan2tds @@ -425,7 +425,6 @@ chomp ($Build = `cd $Master/../Build/source && pwd`); 'fnlineno', "die 'skipping, use lineno'", 'foiltex', "die 'skipping, nosell license'", 'font-change', "&MAKEflatten", - 'font-change-xetex', "&MAKEflatten", 'fontawesome', "&MAKEflatten", 'fontinst', "&MAKEfontinst", 'fontinstallationguide', "die 'skipping, use Type1fonts'", @@ -1172,6 +1171,7 @@ chomp ($Build = `cd $Master/../Build/source && pwd`); 'dynblocks' => '&PREHOOK_flatten1', 'enctex', => '&PREHOOK_flatten1', 'fixme' => '&PREHOOK_fixme', + 'font-change-xetex' => '&PREHOOK_flatten1', 'fontools' => '&PREHOOK_fontools', 'gothic' => '&PREHOOK_gothic', 'grotesq' => '&PREHOOK_unzip', @@ -1233,6 +1233,7 @@ chomp ($Build = `cd $Master/../Build/source && pwd`); 'eplain' => '&POSTeplain', 'epspdf' => '&POSTepspdf', 'fixme' => '&POSTfixme', + 'font-change-xetex' => '&POSTfont_change_xetex', 'fpl' => '&POSTfpl', 'frenchle' => '&POST_rmsymlink', 'ghsystem' => '&POSTghsystem', @@ -1518,7 +1519,6 @@ $standardtex='\.(.bx|code\.tex|cfg|sty|clo|ldf|cls|def|fd|fontspec|cmap|4ht)$'; 'fltpoint', '\.sty|\.tex', 'fntproof', 'fntproof.tex', 'font-change', 'default-amssymbols.tex|font_.*\.tex', - 'font-change-xetex', 'font.*\.tex', 'fontawesome', 'fontawesomesymbols-.*\.tex|' . $standardtex, 'fontch', '\.tex', 'footnpag', 'footnpag\.sty', @@ -1869,6 +1869,7 @@ $standardtex='\.(.bx|code\.tex|cfg|sty|clo|ldf|cls|def|fd|fontspec|cmap|4ht)$'; 'fig4latex', 'support', 'findhyph', 'support', 'fltpoint', 'generic', + 'font-change-xetex', 'xetex', 'fontch', 'plain', 'fontools', 'support', 'fourier', 'fonts', @@ -5612,6 +5613,11 @@ sub POSTfontools { &tl_man_to_pdf (); } +sub POSTfont_change_xetex { + print "POST$package - move .tex, collision with doc source\n"; + &mv_with_mkdir ("macros/*", "$DEST/tex/xetex/$package/"); +} + sub POSTfpl { print "POST$package - rename README.source\n"; &SYSTEM ("$MV README.source $DEST/source/fonts/fpl/README"); diff --git a/Master/tlpkg/tlpsrc/collection-xetex.tlpsrc b/Master/tlpkg/tlpsrc/collection-xetex.tlpsrc index b97e736754e..1a862476806 100644 --- a/Master/tlpkg/tlpsrc/collection-xetex.tlpsrc +++ b/Master/tlpkg/tlpsrc/collection-xetex.tlpsrc @@ -12,6 +12,7 @@ depend bidipagegrid depend bidishadowtext depend bidipresentation depend fixlatvian +depend font-change-xetex depend fontbook depend fontwrap depend interchar diff --git a/Master/tlpkg/tlpsrc/font-change-xetex.tlpsrc b/Master/tlpkg/tlpsrc/font-change-xetex.tlpsrc new file mode 100644 index 00000000000..e69de29bb2d --- /dev/null +++ b/Master/tlpkg/tlpsrc/font-change-xetex.tlpsrc |