[Tex/LaTex] texlive-fonts-extra + \ssfamily + microtype + [T1]{fontenc} = pdflatex crash

fontskilepdftex

PdfLaTex now terminates with a fatal error (no pdf generated) while processing my book, a novel without math. It was working before with all my PSNFSS fonts, and those are the postscript fonts universally installed with every TeX distribution. Now only the newcent package (New Century Schoolbook [roman] plus Avant Garde [sans] and bookman packages work (Bookman [roman] Avant Garde [sans] ) work without crashing my project.

During trail and error I found that even my default TeX font (Computer Modern) crashes every time now. The other standard font packages only crash when I call up \sffamily fonts [sans fonts]. By the way, I discovered with more trial and error testing that those crashes only happen when I use the microtype package (for superb typesetting) with [T1]fontenc font encoding. So, I can use all the universal PSNFSS TeX fonts (and my default Computer Modern font) as long I don't use fontenc with microtype. (I don't use any special options with microtype, I just load the package by calling \usepackage{microtype} and that's it)

These crashes started immediately after installing texlive-fonts-extra package from Ubuntu Repositories, to add extra fonts. Months before that I had installed getnonfreefonts to TeX, so that I had access to garamondx and other fonts, and that appeared to not cause any problems at all.

Other than that I have an unmodified TeXLive distribution. I've installed both LyX and Kile to work with TeXLive. I use Kile for my project, and occasionally piddle in LyX, mainly to see what the LaTeX code is after doing things more graphically, to learn the code. My operating system is Kubuntu 14.04 Linux, with everything LaTeX related pulled directly out of the Ubuntu Package Repositories, with the exception of the getnonfreefonts installation.

Here's the exact error output:

***** PDFLaTeX output: ***** cd "/home/mark/BOOk DESIGN/Three B" ***** pdflatex -interaction=nonstopmode test_article.tex ***** This is
pdfTeX, Version 3.1415926-2.5-1.40.14 (TeX Live 2013/Debian)
restricted \write18 enabled. entering extended mode
(./test_article.tex LaTeX2e <2011/06/27> Babel <3.9h> and hyphenation
patterns for 7 languages loaded.
(/usr/share/texlive/texmf-dist/tex/latex/base/book.cls Document Class:
book 2007/10/19 v1.4h Standard LaTeX document class
(/usr/share/texlive/texmf-dist/tex/latex/base/bk10.clo))
(/usr/share/texlive/texmf-dist/tex/latex/microtype/microtype.sty
(/usr/share/texlive/texmf-dist/tex/latex/graphics/keyval.sty)
(/usr/share/texlive/texmf-dist/tex/latex/microtype/microtype-pdftex.def)
(/usr/share/texlive/texmf-dist/tex/latex/microtype/microtype.cfg))
(/usr/share/texlive/texmf-dist/tex/latex/base/fontenc.sty
(/usr/share/texlive/texmf-dist/tex/latex/base/t1enc.def))
(./test_article.aux)
(/usr/share/texlive/texmf-dist/tex/latex/microtype/mt-cmr.cfg)
(/usr/share/texlive/texmf-dist/tex/latex/base/t1cmss.fd)
[1{/var/lib/texmf/font s/map/pdftex/updmap/pdftex.map} ! pdfTeX error
(font expansion): auto expansion is only possible with scalable fonts.
\endgroup \set@typeset@protect l.15 \end{document} ! ==> Fatal error
occurred, no output PDF file produced! Transcript written on
test_article.log.

From the portion of my preamble dealing with fonts, I select from the ones below:

%%%%%% novel project %%%%%%%%%

\documentclass{book}

\usepackage{microtype}

\usepackage[T1]{fontenc}

%  %   %  %   % PSFNSS2e font packages %     %     %      %    %    %    %    %
%  %   %  %   %       select one package     %     %     %      %    %    %    % 
% \usepackage{mathptmx}   % Times font, default sans
% \usepackage{charter}    % Bitstream's Charter font, default sans
% \usepackage{mathpazo}   % Palatino font, default sans
% \usepackage{bookman}    % Bookman font, Avant Garde sans 
% \usepackage{utopia}     % Utopia font, default sans
% \usepackage{chancery}   % Zapf Chancery font, default sans
% \usepackage{newcent}    % New Century Schoolbook font, Avant Garde sans
%   %   %   %  %  SELECT NONE ABOVE TO USE Computer Modern default %  %   %   % 

%%%%%%% END PREAMBLE  %%%%%%% 

Why am I getting crashes now, and what can I do to prevent it?

Best Answer

Based on the comments received, I've been able to answer my question.

See page 27 of the current manual for microtype. ! pdfTeX error (font expansion): auto expansion is only possible with scalable fonts. Automatic font expansion has been improved in pdfTeX 1.40, in that it now not only works with Type 1 fonts but also with TrueType, OpenType and even non- embedded fonts. The above error message indicates either that you are trying to apply expansion to a bitmap (pk) font, which is still not possible, or that the font isn’t found at all, e.g., because of missing map entries. – cfr

And so the Computer Modern default is the culprit, since it couldn't have been expanded by the LaTeX Microtype package. Bookman and Newcent had worked only because they called up both a Roman alternative and a Sans alternative (my novel uses both). The other packages had failed because they only implemented their own Roman font, while using my TeX distributions default, Computer Modern in my case.

The solution is to set the default fonts in all my LaTeX Preamble templates (that I use with this machine) to Latin Modern, which has identical metrics, is designed to appear identical, but has [T1]fontenc encoding capabilities, which my Microtype package will handle. PdfLaTeX should not be crashing, even so, but since it does, this is the fix. For posterity and others that might have the same problem, here's the fix to the Preamble segment from the question:

%%%%%% novel project %%%%%%%%%

\documentclass{book}

\usepackage{microtype}

\usepackage[T1]{fontenc}

%%%  % FIX: change to [T1]fontenc microtype expandable fonts  %  %%% 

 \renewcommand{\ttdefault}{lmtt} % FIX: default Computer Modern TT 
                                 % changed to Latin Modern TT (typewriter)

 \renewcommand{\rmdefault}{lmr} % FIX: default Computer Modern Roman 
                                % changed to Latin Modern Roman

 \renewcommand{\sfdefault}{lmss} %FIX: default Computer Modern Sans Serif 
                                % changed to Latin Modern Sans Serif
%   %   %   %   %   %   %   %   %   %   %   %   %   %   %   %   %   %   %

%  %   %  %   % PSFNSS2e font packages %     %     %      %    %    %    %    %
%  %   %  %   %       select one package     %     %     %      %    %    %    % 
% \usepackage{mathptmx}   % Times font, default sans
% \usepackage{charter}    % Bitstream's Charter font, default sans
% \usepackage{mathpazo}   % Palatino font, default sans
% \usepackage{bookman}    % Bookman font, Avant Garde sans 
% \usepackage{utopia}     % Utopia font, default sans
% \usepackage{chancery}   % Zapf Chancery font, default sans
% \usepackage{newcent}    % New Century Schoolbook font, Avant Garde sans
%   %   %  SELECT NONE ABOVE TO USE Latin Modern new defaults %  %   %   % 

%%%%%%% END PREAMBLE  %%%%%%%%%%%%%%%%