这和下面的代码基本相同:
...但有一些变化 - 值得注意的是,它使用fontspec
Junicode 字体,因此需要用 进行编译xelatex
。这是 MWE:
\documentclass[12pt,a4paper]{article}
\usepackage[pass]{geometry}
\usepackage{tikz,enumitem}
\usepackage{fontspec}
\defaultfontfeatures{Ligatures=TeX}
\setmainfont{Junicode}
\begin{document}
\pdfpagewidth=148mm \pdfpageheight=210mm % for PDF output
\paperwidth=148mm \paperheight=210mm % for TikZ
\begin{tikzpicture}[overlay,remember picture,y=0.80pt,x=0.80pt,yscale=-1, inner sep=0pt, outer sep=0pt,anchor=north west]
\begin{scope}[shift={(0,0.34461553)}]% layer1
\fontspec[Scale=0.83]{Junicode}
\fontsize{21}{27.3}\selectfont % introduces: "LaTeX Font Warning:"...
\path[fill=blue] (10,10) node[below right] (text3134) {%
\begin{minipage}{150pt}%
\begin{itemize}[leftmargin=*,topsep=0pt,itemsep=0pt]%
\setlength{\parskip}{0pt}%
\item[\textcolor{red}{\textbullet}] Hello
\item 2\textsuperscript{\fontsize{9}{11.7}\selectfont nd} {\scshape Entry}
\end{itemize}%
\end{minipage}
}%path
;
\end{scope}
\end{tikzpicture}
\end{document}
当我运行xelatex test.tex
;当该行\fontsize{21}{27.3}\selectfont
生成以下警告时:
[...]
*geometry* detected driver: xetex
ABD: EveryShipout initializing macros
LaTeX Font Warning: Font shape `OML/cmm/m/it' in size <10.5> not available
(Font) size <10.95> substituted on input line 29.
LaTeX Font Warning: Font shape `OMS/cmsy/m/n' in size <10.5> not available
(Font) size <10.95> substituted on input line 29.
LaTeX Font Warning: Font shape `OT1/cmr/m/n' in size <10.5> not available
(Font) size <10.95> substituted on input line 29.
[1] (./test.aux)
LaTeX Font Warning: Size substitutions with differences
(Font) up to 0.45pt have occurred.
)
Output written on test.pdf (1 page).
Transcript written on test.log.
现在,据我所知,字体警告类似于OT1/cmr/m/n
Computer Modern 字体 - 但是,我从未请求过该字体;我以为 Junicode 现在是默认字体?那么,这个警告是从哪里来的 - 为什么它只在\fontsize{21}{27.3}\selectfont
启用第一个字体时出现?
我对上述代码的想法是首先用 指定默认字体比例(如“全局比例”)\fontspec[Scale=0.83]{Junicode}
;然后用 - 指定默认字体大小,\fontsize{21}{27.3}\selectfont
然后可能覆盖默认字体大小(如\fontsize{9}{11.7}
)。(我希望字体大小 21 和 9 都缩放 0.83)。
我想说,生成的 PDF 确实看起来像我期望的那样(尽管我还没有精确测量尺寸是否真的按照我期望的方式缩放) - 但是,这些警告让我感到困惑 - 为什么它们会出现以及如何消除它们?
非常感谢您的任何回答,
干杯!
答案1
由于相当复杂的原因,数学字体仍然被加载(并且大小固定);这些警告其实完全无害,但很烦人。您可以通过加载来摆脱它们
\usepackage{fix-cm}
笔记
我不明白这句话
\fontspec[Scale=0.83]{Junicode}\fontsize{21}{27.3}\selectfont
不会
\fontsize{17.5}{27.3}\selectfont
会做同样的事情吗?无论如何,\fontspec
这是一个很难使用的宏,最好\newfontfamily
在序言中使用;但是,在这种情况下,\addfontfeatures{Scale=0.83}
会做同样的事情。