summaryrefslogtreecommitdiff
path: root/fonts/newtx/doc/newtxdoc.tex
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-30 03:00:43 +0000
committerNorbert Preining <norbert@preining.info>2019-09-30 03:00:43 +0000
commitbbbe8128e7ae9d816a221377dbf5ff3969bb203b (patch)
tree0283a521760b879b30e61872f14f235645745675 /fonts/newtx/doc/newtxdoc.tex
parent14ce8b68fe7df49e8a8891bb94c63b9a846da232 (diff)
CTAN sync 201909300300
Diffstat (limited to 'fonts/newtx/doc/newtxdoc.tex')
-rw-r--r--fonts/newtx/doc/newtxdoc.tex124
1 files changed, 122 insertions, 2 deletions
diff --git a/fonts/newtx/doc/newtxdoc.tex b/fonts/newtx/doc/newtxdoc.tex
index df822db02c..5ee34386c6 100644
--- a/fonts/newtx/doc/newtxdoc.tex
+++ b/fonts/newtx/doc/newtxdoc.tex
@@ -2,9 +2,17 @@
\documentclass[11pt]{article}
\usepackage[margin=1in]{geometry}
\usepackage[parfill]{parskip}% Begin paragraphs with an empty line rather than an indent
+\pdfmapfile{=newtx.map}
+\pdfcompresslevel=0
+\pdfgentounicode=1
+\input glyphtounicode.tex
+\usepackage{pdfx} % v 1.6.4 or higher
+\InputIfFileExists{glyphtounicode-cmr.tex}{}{}
+\InputIfFileExists{glyphtounicode-ntx.tex}{}{}
\usepackage{graphicx}
\usepackage{url}
\usepackage{trace}
+\usepackage{fonttable}
%SetFonts
% newtxtext text and newtxmath
\usepackage{amsthm}
@@ -45,7 +53,9 @@
\section{Introduction}
This package is meant to be a replacement for Young Ryu's {\tt txfonts}. It is a complete text ({\tt newtxtext}) and math ({\tt newtxmath}) package with roman text font provided by a Times clone, sans serif based on a \textsf{Helvetica} clone, typewriter faces, plus math symbol fonts whose math italic letters are from a Times Italic clone. As of version 1.4, {\tt newtxtext} no longer depends on {\tt txfonts} but is based on the richer source \textsf{TeXGyre Termes}, but {\tt newtxmath} continues to use the {\tt txfonts} math glyphs with many metric adjustments and some wholesale modifications.
-\textsc{Very Important:} The math package changed substantially as of version 1.5, changing a number of glyphs, adding an option to reduce the sizes of large operators, and changing the integral signs to a choice of upright and slanted forms, each available in twelve variants. The new options are {\tt upint} (upright integrals) and {\tt smallerops} (smaller large operators.) Some previously available options may no longer have any effect. The changes are described in detail in the section on math mode options. A summary of the changes in version 1.5 is given in the Appendix.
+\textsc{Very Important:} The math package changed substantially as of version 1.5, changing a number of glyphs, adding an option to reduce the sizes of large operators, and changing the integral signs to a choice of upright and slanted forms, each available in twelve variants. The new options are {\tt upint} (upright integrals) and {\tt smallerops} (smaller large operators.) Some previously available options may no longer have any effect. The changes are described in detail in the section on math mode options. A summary of the changes in version 1.5 is given in Appendix 1.
+
+Version 1.60 likewise has many additions and changes that are summarized in Appendix 2. Most important is that {\tt newtx} is now able to output PDF/A-1b compliant pdf using {\tt pdflatex}.
@@ -638,7 +648,7 @@ The font files {\tt ntxexmods.pfb} and {\tt ntxbexmods.pfb} were derived from {\
The last two entries provide us with a way to access custom-encoded versions of {\tt fxlri.pfb} and {\tt fxlbi.map} in order to access some of the unencoded alternate characters---eg, Greek letters, {\tt J.alt} and {\tt v.alt}. The font file \textsf{LibertineTheta-Regular.pfb} was created from the Theta symbol in {\tt fxlri.pfb}, which requires some FontForge help to look correct.
This version contains optical versions of the math italic and symbol fonts at 7\texttt{pt} and 5\texttt{pt}, allowing better rendering in \verb|\scriptstyle| and \verb|\scriptscriptstyle|.
-\section{Appendix: Changes made in version 1.5}
+\section{Appendix 1: Changes made in version 1.5}
\begin{itemize}
\item
The large delimiters have been modified so match the heights in common usage by \texttt{cmex10} and other packages. (Those formerly used by \texttt{newtxmath} were somewhat shorter, resulting in unexpected behavior of \verb|\Big|, \verb|\bigg|, etc.)
@@ -716,4 +726,114 @@ $\smallointctrclockwise$ & \verb|$\smallointctrclockwise$|& $\ointctrclockwise$
\item New macros \verb|\setSYdimens| and \verb|\setEXdimens| allow experts to modify some math font dimensions.
\end{itemize}
+
+\def\jj{\mkern-3mu j}
+
+\section{Appendix 2: Changes made in version 1.60}
+Versions of {\tt newtx} dated from September, 2019 (1.60 for {\tt newtxmath} make some quite substantial changes, mostly to math mode.
+
+\section{Goals}
+Spurred by work of Ross Moore to provide means of generating archivable pdf using {\tt pdflatex}, the main goal was to change {\tt newtx} and {\tt newpx} to meet the requirements for satisfying the {\tt PDF/A-1b} standards by using an appropriate preamble involving the {\tt pdfx} package and other unicode mapping files. Making these changes gave me the opportunity to organize the source files to make them more manageable in future revisions.
+
+A further goal whose time seemed ripe was to rework the spacing of math letters, both Roman and Greek, so they behaved better in superscripts and subscripts. This did not turn out to be so easy. The problem is illustrated by math italic j. If you don't give it enough extra space on the left, it will likely collide with the D in rendering \verb|$D^j$|. On the other hand, if you do give it enough space on the left, it will look bad as a subscript, appearing too far right.
+
+A final goal was to make better use of the remaining space in some of the math fonts by placing some math alphabets in them, avoiding perhaps a waste of those precious sixteen math families.
+
+\section{The important changes}
+The following changes were made to both {\tt newtx} and {\tt newpx}.
+
+\subsection{Archivability}
+Some of the individual font files from which the math fonts are built turned out to have some fairly minor structural issues. These have all been corrected. The more major issue was the lack of unicode mapping for all characters in the fonts. For the symbol and math extension fonts, this issue was largely solved by Ross Moore's {\tt glyphtounicode} files that are now accessible as part of TeXLive and MiKTeX. The main problem was the math alphabets like math italic, bold math italic, upright Greek and slanted Greek, all of which have now been assigned their own unicode points. For all of these, I constructed new fonts using unicode names for the glyphs, then made \textsf{fontinst} scripts that renamed those unicode values to the original simple names as used in the encoding files so that I could use my old encoding and adjustment files. This exercise has now been carried out for {\tt newtxmath}, {\tt newpxmath}, {\tt newtxmath/libertine} and {\tt newtxmath/xcharter.} Each of these can now be considered to have an ``enhanced'' status that allows them to share all the new assets described below. The other packages which may be specified as an option to {\tt newtxmath} (e.g., {\tt cochineal, baskervillef}) must be considered for the moment to be ``unenhanced'' and able to share only some of the new assets. In particular, only the enhanced items can generate archivable pdf.
+
+Also modified were the {\tt sups} fonts in {newtxtext}, where the main issue was unicode mapping. Superior number and some superior letters do have assigned unicode values, but in may cases a more creative approach was needed, and provided once again by Ross Moore. I rebuilt the superior font files using those unicode names, solving that particular problem.
+
+Here is a sample preamble showing the elements you will need to specify to generate a pdf satisfying the PDF/A-1b standards, as verified by Adobe Acrobat Pro. (Other verification processes may yield different outcomes.)
+\begin{verbatim}
+\documentclass[noamsfonts]{amsart} % save 2 math families
+\pdfcompresslevel=0
+\pdfgentounicode=1
+\input glyphtounicode.tex
+\usepackage{pdfx} % v 1.6.4 or higher
+\InputIfFileExists{glyphtounicode-cmr.tex}{}{}
+\InputIfFileExists{glyphtounicode-ntx.tex}{}{}
+\usepackage{newtxtext} %T1 is default encoding
+\usepackage[scaled=0.95]{inconsolata} % typewriter
+%\usepackage[leqno]{amsmath}
+\usepackage{amsthm}
+\usepackage[vvarbb]{newtxmath} % vvarbb gives STIX Bbb
+\end{verbatim}
+
+Version 1.6.3 of {\tt pdfx} from February 2019 mishandles math accents. A fix is now available and will become part of the upcoming {\tt pdfx} v1.6.4.
+
+\subsection{Glyph spacing changes} \textbf{(For enhanced packages only)}I reworked the math italics to improve the rendering of some superscripts. This affects (a) parentheses, brackets and braces to inhibit clashes; (b) glyphs like j, f, p, y, \verb|\rho|, \verb|\beta| and \verb|\mu| where a long tail could pose problems intersecting with other glyphs; (c) glyphs like such as D, Q and \verb|\Phi| that are round on the right, where interference is most likely to occur with a superscript. Increasing the left side-bearing of j, etc., helps with superscripts but creates an ugly gap when used as subscripts.
+
+
+ The {\tt subscriptcorrection} option to {\tt newtxmath} has been corrected and enhanced so that it now offers a partial solution the subscript spacing problem. I regret that this option is incompatible with xy-pic, both depending on making \verb|_| an active character. {\tt Newtxmath} will detect if the {\tt xy} package is loaded and disable {\tt subscriptcorrection} if so. You would have to correct such issues by manually inserting a negative \verb|\mkern|. For example, you might put in your preamble something like
+ \begin{verbatim}
+\def\jj{\mkern-3mu j}
+\end{verbatim}
+and then use \verb|$x_{\jj}$| instead of \verb|$x_j$|, turning $x_j$ into $x_{\jj}$.
+
+If you do enable {\tt subscriptcorrection}, there is a default correction table in the {\tt sty} file, but the sty file also looks for a file named, e.g., {\tt newtx.subs} if you are using the {\tt newtx} default math letters. There is already such a file located in the {\tt newtx} distribution in the \verb|/tex/latex/| folder. If you wish to make changes to this file, copy the file to your home TeX folder where it will be found by TeX before the one in the distribution. The entries in the file are lines like
+\begin{verbatim}
+{j}{-3}
+\end{verbatim}
+each of which will have the same effect as the above macro if the first item in the subscript is j. You can also specify Greek letters with lines like
+\begin{verbatim}
+{\beta}{-1.5}
+\end{verbatim}
+The complete list of file names recognized for specifying subscript corrections is:
+\begin{verbatim}
+newtx.subs
+libertine.subs
+xcharter.subs
+cochineal.subs
+baskervillef.subs
+stickstoo.subs
+garamond.subs
+baskervald.subs
+utopia.subs
+minion.subs
+\end{verbatim}
+
+\subsection{New glyphs added} \textbf{(For enhanced packages only)} Math family 1 {\tt (letters)} has been extended from 128 slots to 256, retaining the {\tt OML} encoding of the first 128. Most of additional slots have been allocated to a script font from the old STIX collection and an upright modification of that font.
+By default, \verb|$\mathscr{F}$| will produce $\mathscr{F}$.\\
+$\bullet$ option {\tt uprightscript} changes the output to {\usefont{OML}{ntxmi}{m}{it}\char201}.\\
+In both cases, there are full upper-case and lower-case and {\tt dotlessi}, {\tt dotlessj}. To insert the latter, you can write either \verb|$\mathscr{\imath}$| or \verb|$\imathscr$|, rendered as $\mathscr{\imath}$ in the slanted script case.
+
+The secondary letters font {\tt (lettersA)} and math family 2 {\tt(symbols)} have been rearranged. The first of these continues to have a Fraktur alphabet, but it a modification of its original one, having wider vertical stems and a blacker appearance more in keeping with the weight Times. {\tt Dotlessi} and {\tt dotlessj} have been added and can be specified in math mode by \verb|$\imathfrak$| and \verb|$\jmathfrak$|---\verb|$\mathfrak{\imath}$| also works. There are in addition two subsidiary Bbb alphabets in {\tt lettersA}, specified by the respective options {\tt vmathbb}, {\tt vvmathbb}, and there are corresponding {\tt dotlessi}, {\tt dotlessj} activated by \verb|$\imathbb$|, \verb|$\jmathbb$|, which always render as $\imathbb$, $\jmathbb$ mo matter the choice of which Blackboard Bold Alphabet. If you select one of the options {\tt vmathbb}, {\tt vvmathbb}, you will have Bbb digits 0..9 using, e.g., \verb|$\mathbb{1}$| to get~$\mathbb{1}$.
+
+Among the new symbols added are:\\
+$\bullet$ \verb|\hslash|, \verb|\hbar|, \verb|\lambdaslash|, \verb|\lambdabar|, \verb|\Zbar|, \verb|\Angstrom| are now constructed from the native glyphs, but only in the enhanced families.\\
+$\bullet$ Euler's constant \verb|$\Euler$| ($\Euler$).\\
+$\bullet$ Hermitian transpose \verb|\hermtransp| or \verb|\htransp| is used like \verb|$\mathbf{A}^{\htransp}$| ($\mathbf{A}^{\htransp}$). This usage is similar to simple transpose \verb|$\mathbf{A}^{\transp}$| ($\mathbf{A}^{\transp}$).\\
+$\bullet$ Independence can use \verb|\Perp|, $\Perp$, and there is a new \verb|\nPerp|, $\nPerp$ for the negation.
+
+\subsection{Adaptive vector accent} The \LaTeX\ macro \verb|\overrightarrow| provides a right arrow with adaptive width, but not matching the vector head of {\tt newtxmath}. Likewise, the {\tt esvect} provides a similar service with a choice of vector heads, none of which match {\tt newtxmath}. I've added code to provide a matching adaptive vector accent and which uses the same macro name, \verb|\vv|, as {\tt esvect}.
+For a comparison of thse vector accents, \verb|$\vec{XY} \vv{XY} \overrightarrow{XY}$| renders as\\
+$\vec{XY} \vv{XY} \overrightarrow{XY}$.\\
+$\bullet$ \verb|$\vv{AB}$| renders as $\vv{AB}$.\\
+$\bullet$ \verb|$\vv*{AB}{x}$| renders as $\vv*{AB}{x}$. This provides better horizontal spacing of subscripts than \verb|$\vv{AB}_{x}$|, $\vv{AB}_{x}$.\\
+$\bullet$ You can also do \verb|$\vv*{AB}{\vv{CD}}$|, which renders as $\vv*{AB}{\vv{CD}}$.\\
+$\bullet$ You can change the vertical space between the arrow and the accentee by means of the package option {\tt vecsep}, whose default value is {\tt .25ex}.
+
+\subsection{Miscellaneous Changes}
+\begin{itemize}
+\item
+The superior letters fonts in {\tt newtx}
+have been extended and all glyphs now have appropriate unicode mappings.
+\item
+The AMS fonts replacement, {\tt ntxsym} corrects the former misplacement of \verb|\kbbb|, \verb|\daleth|, \verb|\circledR| and \verb|\circledS|.)
+\end{itemize}
+\newpage
+\section{Changed Font Tables}
+\subsection{letters}
+\fonttable{ntxmi}
+\newpage
+\subsection{lettersA}
+\fonttable{ntxmia}
+\newpage
+\subsection{symbols}
+\fonttable{ntxsy}
+\newpage
\end{document} \ No newline at end of file