Memoir Class 中的Polyglossia {french}
。我喜欢的字体是 Open Sans。使用 XeLaTeX 编译的 MWE:
\documentclass[a4paper,article]{memoir}
\usepackage[demo]{graphicx}
\usepackage{polyglossia}
\setdefaultlanguage{french}
\setmainfont{Open Sans}
\begin{document}
C'est un test pour "small caps": Fig.~\ref{fig:myfigure}.
\begin{figure}[ht] \centering
\includegraphics{nothing}
\caption{c'est ma figure}\label{fig:myfigure}
\end{figure}
\end{document}
- 生成警告:
LaTeX 字体警告:
EU1/OpenSans(0)/m/sc' undefined (Font) using
输入行 10 上的字体形状为 EU1/OpenSans(0)/m/n'。
输出完全可读,但标题中的“Fig”字体正常:
为了消除警告并获得法式“无花果”形状,我尝试使用可以处理小写字母的字体(例如 s 之一TeX Gyre
)来呈现小写字母,但在我的 Arch Linux Tex-Live 设置上没有任何效果。
将行更改setmainfont
为使用 TeX Gyre Heroes,像这样:
\setmainfont[
Extension=.otf,
UprightFont= *-regular,
BoldFont=*-bold,
ItalicFont=*-italic,
BoldItalicFont=*-bolditalic,
]{texgyreheros}
- 确实有效:
- 但对于我的文档来说,TeX Gyre Heros 有点重。
有没有办法让标题使用兼容小型大写字母的字体(理想),或者根本不使用小型大写字母(从而删除Warning
)?
我的各种尝试,喜欢 \[captionnamefont]{\upshape}
,一事无成。
答案1
这里的罪魁祸首是该gloss-french.ldf
文件
\def\figurename{\textsc{Fig.}}
因此你可以使用以下方法覆盖它,例如
\addto\captionsfrench{\def\figurename{Fig.}}
完整示例:
\documentclass[a4paper,article]{memoir}
\usepackage[demo]{graphicx}
\usepackage{polyglossia}
\setdefaultlanguage{french}
\setmainfont{Open Sans}
\addto\captionsfrench{\def\figurename{Fig.}}
\begin{document}
C'est un test pour "small caps": Fig.~\ref{fig:myfigure}.
\begin{figure}[ht] \centering
\includegraphics{nothing}
\caption{c'est ma figure}\label{fig:myfigure}
\end{figure}
\end{document}
唯一强制使用小写字母的部分是表名,因此你可能还需要
\def\tablename{Tab.}
在 - 的里面\addto\captionsfrench
答案2
我不知道是否有适合您需要的字体,但如果您根本不想使用小型大写字母,您可以在序言中添加以下几行:
\usepackage{letltxmacro}
\LetLtxMacro{\scshape}{\upshape}
平均能量损失
\documentclass[a4paper,article]{memoir}
\usepackage[demo]{graphicx}
\usepackage{polyglossia}
\setdefaultlanguage{french}
\setmainfont{Open Sans}
\usepackage{letltxmacro}
\LetLtxMacro{\scshape}{\upshape}
\begin{document}
C'est un test pour "small caps": Fig.~\ref{fig:myfigure}.
\begin{figure}[ht] \centering
\includegraphics{nothing}
\caption{c'est ma figure}\label{fig:myfigure}
\end{figure}
\end{document}