XeLaTex 中的 MWE:
\documentclass[12pt]{article}
\usepackage[a4paper]{geometry}
\geometry{tmargin=2cm,bmargin=2cm,lmargin=2cm,rmargin=2cm}
\usepackage[russian]{babel}
\begin{document}
Б\'{о}льший №
\end{document}
输出:
普通 LaTeX 中的相同代码是正确的:
\documentclass[12pt]{article}
\usepackage[a4paper]{geometry}
\geometry{tmargin=2cm,bmargin=2cm,lmargin=2cm,rmargin=2cm}
\usepackage[russian]{babel}
\begin{document}
Б\'{о}льший №
\end{document}
是什么原因?字体?
关于未找到字体的更新
\documentclass[12pt]{article}
\usepackage[a4paper]{geometry}
\geometry{tmargin=2cm,bmargin=2cm,lmargin=2cm,rmargin=2cm}
\usepackage{fontspec}
\usepackage{noto}
\setmainfont{Noto Serif} % <- Error
\usepackage[main=russian,english]{babel}
\begin{document}
\noindent
Б\'{о}льший №\\
\textsf{Sans serif text}\\
{\tt True type text}
\end{document}
使用 CMU Concrete 字体进行更新
\documentclass[12pt]{article}
\usepackage[a4paper]{geometry}
\geometry{tmargin=2cm,bmargin=2cm,lmargin=2cm,rmargin=2cm}
\usepackage[russian]{babel}
\usepackage{fontspec}
\tracinglostchars=2
\babelfont{rm}[Script=Cyrillic, Language=Russian]{CMU Concrete}
\begin{document}
\setmainfont{CMU Concrete}[Script=Cyrillic, Language=Russian]
Б\'{о}льший №
\end{document}
还是一样:
答案1
使用能够正确支持您所使用的语言的字体。以下是解决方案 能登:
\documentclass[12pt]{article}
\usepackage{noto-serif}
\usepackage{noto-sans}
\usepackage{noto-mono}
\usepackage[russian]{babel}
\begin{document}
\textrm{Б\'{о}льший №}
\textsf{Б\'{о}льший №}
\texttt{Б\'{о}льший №}
\end{document}
答案2
您实际上并没有加载 CMU Concrete。此 MWE 在 TeX Live 2020 中运行良好:
\documentclass[12pt]{article}
\usepackage[a4paper]{geometry}
\geometry{tmargin=2cm,bmargin=2cm,lmargin=2cm,rmargin=2cm}
\usepackage[russian]{babel}
\tracinglostchars=2
\babelfont{rm}{CMU Concrete}
\begin{document}
Б\'{о}льший №
\end{document}
\babelfont
与其他方法相比,它的一个优点是将使用和babel
加载字体,并在您选择俄语时切换到它们。在 LuaLaTeX 上,您甚至可以在输入西里尔文时自动切换,而无需其他命令。Script=Cyrillic
Language=Russian
西里尔字母与拉丁字母非常相似,您通常可以使用默认设置,但某些字体会提供保加利亚字母而不是俄语,除非您选择该语言作为 OpenType 字体功能。
答案3
我认为在并且XeLaTeX
字符是unicode...有必要使用,
\usepackage{fontspec}
\setmainfont{Arial} %<---- a random set of characters.
\documentclass[12pt]{article}
\usepackage[a4paper]{geometry}
\usepackage[russian]{babel}
\usepackage{fontspec}
\setmainfont{Arial}
\geometry{tmargin=2cm,bmargin=2cm,lmargin=2cm,rmargin=2cm}
\begin{document}
Б\'{о}льший №
\end{document}
使用Noto Serif
,
\documentclass[12pt]{article}
\usepackage[a4paper]{geometry}
\usepackage[russian]{babel}
\usepackage{fontspec}
\setmainfont{Noto Serif}
\geometry{tmargin=2cm,bmargin=2cm,lmargin=2cm,rmargin=2cm}
\begin{document}
Б\'{о}льший №
\end{document}
答案4
我无法从您提供的第一个例子中重现您的图片,并且只出现最后一个字形,因为它存在于拉丁现代罗马字体中。
另一方面,以下代码使用 XeLaTeX 和 LuaLaTeX 重现了没有奇怪框的字体(CMU Concrete)。
\documentclass[12pt]{article}
\usepackage[a4paper]{geometry}
\geometry{tmargin=2cm,bmargin=2cm,lmargin=2cm,rmargin=2cm}
\usepackage[russian]{babel}
\usepackage{fontspec}
\setmainfont{CMU Concrete}[Script=Cyrillic]
\begin{document}
Б\'{о}льший №
\end{document}