使用 Lualatex 设置主字体没有任何效果

使用 Lualatex 设置主字体没有任何效果

我面临的问题如下。对于一篇论文,我需要将字体类型设置为特定的类型,因此我决定使用 Lualatex。使用我修改过的给定模板。它没有抛出任何错误并且编译良好,但 /setmainfont 中的更改根本没有任何效果。认为可能有东西覆盖了它,因此将 setter 放置在声明的末尾,但这也无济于事。

例如,为了轻松确定它是否有效果,尝试将其设置为 Comic Sans MS

% !TeX program = lualatex
% !TeX TXS-program:bibliography = txs:///biber
%!TeX encoding = UTF-8 Unicode

\documentclass[%
draft=false,%
paper=a4,% 
fontsize=12pt,%
pagesize=auto,%pdftex,%
twoside=false,%
headings=small,openany,% 
chapterprefix=false,% 
version=last,%
titlepage=true,%
parskip=half+,%
mpinclude=false,%
headsepline=true,%
toc=bibliography,%
toc=index,%
numbers=noendperiod%
]{scrbook}

\usepackage{scrlayer-scrpage} 
\pagestyle{scrheadings}
\ohead[]{\pagemark}
\chead{}
\ihead{\headmark}
\ofoot[]{}
\cfoot[]{}
\automark[chapter]{chapter}
\automark*[section]{}
\renewcommand*{\chapterpagestyle}{scrheadings}

\usepackage[left=3.5cm,right=2.5cm,top=2cm,bottom=2cm,includeheadfoot]{geometry}
\usepackage[onehalfspacing]{setspace}

\usepackage[utf8]{inputenc} 
\usepackage[T1]{fontenc}

\usepackage[full]{textcomp}
\usepackage{newtxtext,newtxmath,newtxtt}

\usepackage{fixltx2e}
\usepackage[babel]{microtype}
\usepackage{ellipsis}

\clubpenalty = 10000
\widowpenalty = 10000
\displaywidowpenalty = 10000

\usepackage[autostyle,babel,german=guillemets,style=german]{csquotes}
\usepackage[USenglish,ngerman]{babel} 
\selectlanguage{ngerman}

\setkomafont{sectioning}{\rmfamily\bfseries}
\setkomafont{title}{\normalfont\rmfamily}
\setkomafont{descriptionlabel}{\rmfamily}
\setkomafont{caption}{\small\itshape} 
\setkomafont{pageheadfoot}{\normalfont\normalcolor\footnotesize}
\setcounter{secnumdepth}{4}
\setcounter{tocdepth}{4}

\setcaptionalignment{c}
\setcapindent{0pt}

\usepackage{polyglossia}
\setmainlanguage{german}

\usepackage[%
 backend=biber,%
 style=apa7,% 
 bibstyle=authoryear,%
 citestyle=authoryear,%
 natbib=false,%
 sorting=anyt,%
 sortcites=true,%
 hyperref=auto,%
 maxnames=3,%
 isbn=false,%
 url=false,%
 maxbibnames=99,%
 minnames=1,%
 dashed=false%
]{biblatex}

\bibliography{bib}

\setlength{\bibitemsep}{1em}

\usepackage{pdfpages}
\usepackage{hyperref} 
\urlstyle{rm}
\usepackage{color}
\definecolor{darkblue}{rgb}{0,0,.5}
\hypersetup{%
   pdfauthor={Author},%
   pdfstartview=FitH,%
   pdfpagelayout=OneColumn,%
   naturalnames=true,%
   colorlinks=true,%
   breaklinks=true,%
   linkcolor=blue,%
   citecolor=black,%
   filecolor=black,%
   urlcolor=black}
   
\newcommand{\meta}[1]{\texttt{#1}}
\newcommand{\fat}[1]{\textbf{#1}} 
\newcommand{\product}[1]{\textsc{#1}} 

\usepackage{graphicx}
\graphicspath{/img}
\usepackage{booktabs}

\usepackage{enumerate}
\usepackage{varioref}

\newcommand{\verylongpage}{\enlargethispage{2\baselineskip}}

\usepackage[ngerman=ngerman-x-latest]{hyphsubst}
\hyphenation{}

\usepackage{xspace} 

\newenvironment{myquote}{\begin{quote} \small}{\end{quote}}

\renewcommand\uppertitleback[1]{\thispagestyle{empty}#1\vfill}
\renewcommand\lowertitleback[1]{#1}

\usepackage{color}
\definecolor{shadecolor}{gray}{.70}

\usepackage[framemethod=TikZ]{mdframed}
\usepackage{xcolor}

\definecolor{light-gray}{gray}{0.85}

\newmdenv[%
backgroundcolor=light-gray,
linecolor=light-gray,
skipabove=1\baselineskip,
skipbelow=1\baselineskip,
]{shaded}

\newmdenv[%
linecolor=black,
outerlinewidth=1pt,
skipabove=1\baselineskip,
skipbelow=1\baselineskip,
]{syntax}

\DefineBibliographyStrings{ngerman}{andothers={et\addabbrvspace al\adddot}}

\usepackage{fontspec}
% \setmainfont{Times New Roman}
\setmainfont{Comic Sans MS}
\setsansfont{Arial}
\setmonofont{Courier New}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{document} 

如果有人知道为什么它没有效果以及如何解决这个问题,我会很高兴:)

答案1

总结一下之前的评论:您必须删除——或者注释掉——以下代码块:

\usepackage[utf8]{inputenc} 
\usepackage[T1]{fontenc}

\usepackage[full]{textcomp}
\usepackage{newtxtext,newtxmath,newtxtt}

使用 LuaLaTeX 或 XeLaTeX 编译文档时,不应加载 、 和 包。并且,inputenc通过fontenc加载、和,textcompnewtxtextnewtxmathnewtxtt)——加载所有重要的fontspec包,您会抑制后续指令的正常运行\set[main/sans/mono/]font

顺便问一下,您的文档中没有数学材料吗?如果有,您可能需要 (a) 加载unicode-math包而不是fontspec包,并且 (b) 发出合适的\setmathfont指令。话虽如此,我想不出一种可以与 很好地混合搭配的体面数学字体Comic Sans。:-)

babel一些额外的评论,无特定顺序:同时加载和不是一个好主意polyglossia。不要多次加载包(参见“color”和“xcolor”)。\bibliography{bib}已弃用;请写入\addbibresource{bib.bib};文件扩展名是强制性的。确保加载xurl包以允许在 URL 字符串中的任意位置换行。我会使用包enumitem,而不是enumerate包,来自定义列表类环境的属性。

相关内容