我得到了这个代码
\documentclass[12pt]{article}
\usepackage[margin=1in]{geometry}
\usepackage[dvipsnames]{xcolor}
\usepackage{fancyhdr}
\usepackage{lmodern}
\usepackage{chessboard}
\usepackage{enumitem}
\usepackage{hyperref}
\hypersetup{colorlinks=true,}
\hypersetup{linkcolor=red}
\hypersetup{citecolor=Green}
\pagestyle{fancy}
\setlength{\headheight}{14.49998pt}
\addtolength{\topmargin}{-2.49998pt}
\usepackage[framemethod=TikZ]{mdframed}
\begin{document}
\lhead{Chess Puzzles}
\begin{center}
\large \underline{Puzzles}
\end{center}
\begin{enumerate}
\item Puzzle \href{https://lichess.org/training/PMdLu}{\#PMdLu},
Rating: 2002.\\
Themes:
\begin{center}
\vspace{-15pt}\chessboard[setfen=8/1p3p2/1Pp1kP1P/2Pp2K1/p3b3/P2rR3/8/8 w - - 1 45]
\end{center}
\textbf{Solution.} h7, Rxe3, h8=Q.
\end{enumerate}
\end{document}
还有这个警告:
Font shape `OT1/lmss/m/up' undefined
所以我补充道
\usepackage[OT1]{fontenc}
但这没有帮助。我也在网上搜索答案,一个 StackExchange 网站建议添加
\usepackage{lmodern}
序言。嗯……这没用。添加也没有用
\usepackage{anyfontsize}
我通常会忽略警告。但这个警告让我很困扰...有什么提示吗?
答案1
你可以将示例简化为
\documentclass[12pt]{article}
\usepackage{chessboard}
\begin{document}
\chessboard[setfen=8/1p3p2/1Pp1kP1P/2Pp2K1/p3b3/P2rR3/8/8 w - - 1 45]
\end{document}
这使得
LaTeX Font Warning: Font shape `OT1/cmss/m/up' undefined
(Font) using `OT1/cmss/m/n' instead on input line 8.
up
棋盘上的某些东西正在期待正常直立形状的非标准名称,而不是n
最简单的事情就是在这里定义up
以默默替代n
\documentclass[12pt]{article}
\usepackage{chessboard}
\DeclareFontShape{OT1}{cmss}{m}{up}
{<->ssub*cmss/m/n}{}
\begin{document}
\chessboard[setfen=8/1p3p2/1Pp1kP1P/2Pp2K1/p3b3/P2rR3/8/8 w - - 1 45]
\end{document}
您可以对所使用的任何字体系列进行类似的替换。