font not found with basic example

font not found with basic example

我使用完全相同的例子使用中文这里,但是当尝试编译它时,它会引发错误:

! fontspec error: "font-not-found"
! 
! The font "SimSun" cannot be found.
! 
! See the fontspec documentation for further information.
! 
! For immediate help type H <return>.
!...............................................  

l.3 \setCJKmainfont{SimSun.ttf}

? 
! Emergency stop.
!...............................................</p>

我使用的代码是:

\documentclass{ctexart}
 
\setCJKmainfont{SimSun.ttf}
\setCJKsansfont{SimHei.ttf}
\setCJKmonofont{SimFang.ttf}
\begin{document}
\tableofcontents
\begin{abstract}
这是在文件的开头的介绍文字.本文的主要话题的简短说明.
\end{abstract}
\section{ 前言 }
在该第一部分中的一些额外的元素可以被添加。巴贝尔包将采取的翻译服务.
\section{关于数学部分}
在本节中的一些数学会使用数学模型含中文字符显示。
這是一個傳統的中國文字
\end{document}

我在 sharelatex 上创建了一个空白项目,并将编译器设置为 XeLatex。

答案1

当您使用fontspec选择字体时,您可以访问系统上安装的任何字体,只要它具有适当的格式并且合理。

这样做的好处是您可以使用未打包或安装的字体来与 TeX 一起使用。

缺点当然是你必须实际安装字体。

您正在尝试编译一个依赖于系统字体的示例,而该系统字体不属于 TeX 发行版。要使用此字体,您需要获取一份副本并将其放在 XeTeX 可以找到的地方。

如果您使用的是在线编译系统,则无法为系统安装字体。您必须返回为其提供文件路径的选项。

This requires you to upload the font in question. The easiest option is to just upload it into the same directory as you .tex document. Then <filename>.ttf will work without worrying about the path.

There are some restrictions when using uninstalled fonts in this way, but for basic usage, it should work fine. (And the example is doing the same thing - loading by filename - so it must also be relying on this method. Hence, it should work fine.)

If you don't have the fonts required, you can upload other fonts and change the filenames. Just make sure they provide the coverage you need in terms of scripts etc.

相关内容