Features associated by `fontspec` with slanted fonts modify smallcap upright fonts. To demonstrate this, we mark font shapes with different colors using `SlantedFeatures` and `ItalicFeatures`. Upright forms remain default black.

When a font does not have slanted variants, italic shapes are used when slanted shapes are requested. For fonts without slanted shapes (such as Junicode), the upright smallcaps examples below are black as expected. For fonts with slanted shapes (as Latin Modern, or Junicode when an explicit slanted font is specified), however, the upright smallcaps examples are red.

(Tested with MiKTeX 2.9 current as of 2011-07-03. In particular, XeTeX
is version 0.9997.5, and fontspec is version 2.1f.)

================= (not quite) MWE ============================
\documentclass{minimal}

% Temporary fix from Joseph Wright
% needed until MiKTeX 2.9 repositories are updated with new l3 code
     \usepackage{expl3}
     \ExplSyntaxOn
     \cs_set:Npn \bool_until_do:nn #1#2
       {
         \bool_if:nF {#1}
           {
             #2
             \bool_until_do:nn {#1} {#2}
           }
       }
     \ExplSyntaxOff
% end temporary fix

 \usepackage{fontspec}

 \newfontfamily{\Junicode}[UprightFont={Junicode-Regular},
%  SlantedFont={Junicode-Italic},
     SmallCapsFont={Junicode-Regular},SmallCapsFeatures={RawFeature=+smcp},
     ItalicFeatures={Color=0000FF},
     SlantedFeatures={Color=FF0000}]{Junicode}

 \newfontfamily{\LMR}[SmallCapsFont={Latin Modern Roman Caps},
     SlantedFont={Latin Modern Roman Slanted},
     SlantedFeatures={Color=FF0000},
     ItalicFeatures={Color=0000FF},]{Latin Modern Roman}

 \newcommand*{\Item}{\makebox[7em][l]{Equaling}}

 \newcommand*{\Row}{\Item\textit{\Item}\textsl{\Item}\textsc{\Item}}

 \newcommand{\Tbl}{\makebox[2em][r]{\texttt{UP:}~}\Row\\
     {\makebox[2em][r]{\texttt{TT:}~}\itshape\Row}\\
     {\makebox[2em][r]{\texttt{SL:}~}\slshape\Row}\\
     {\makebox[2em][r]{\texttt{SC:}~}\scshape\Row}}

 \newcommand{\Hdg}{\texttt{\makebox[2em]{}%
            \makebox[7em][l]{Base}\makebox[7em][l]{Italic}%
            \makebox[7em][l]{Slanted}\makebox[7em][l]{SmallCap}}}

 \newcommand{\Test}[2]{%
{\noindent\\\csname #1 \endcsname\textbf{#2}\\\Hdg\\\noindent\Tbl}}

\begin{document}

Features associated by \verb!fontspec! with slanted fonts modify smallcap upright fonts. To demonstrate this, we mark font shapes with different colors using \verb!SlantedFeatures! and \verb!ItalicFeatures!. Upright forms remain default black.

When a font does not have slanted variants, italic shapes are used when slanted shapes are requested. For fonts without slanted shapes (such as Junicode), the upright smallcaps examples below are black as expected. For fonts with slanted shapes (as Latin Modern, or Junicode when an explicit slanted font is specified), however, the upright smallcaps examples are red.

See in particular column \verb!Slanted! row \verb!UP!, and column \verb!Base! row \verb!SC!, and column \verb!SmallCap! (all rows) in the samples below.

(Tested with MiKTeX 2.9 current as of 2011-07-03. In particular, XeTeX
is version 0.9997.5, and fontspec is version 2.1f.)

\Test{Junicode}{Junicode}

\Test{LMR}{Latin Modern}
\end{document}
=================== MWE end ==================================



--------------------------------------------------
Subscriptions, Archive, and List information, etc.:
 http://tug.org/mailman/listinfo/xetex

Reply via email to