我对 TeX 还很陌生,但用一个相当知名的Deedy-简历模板。我使用 overleaf 将我的 .tex 代码编译成 pdf。一切都很顺利,直到有一天我必须将我的简历翻译成俄语。代码不能立即使用,我尝试了 Overleaf 建议的解决方案,即将以下代码块放在标题中
\usepackage[utf8]{inputenc}
\usepackage[english, russian]{babel}
\usepackage[T1, T2A]{fontenc}
该项目有 .tex 和 .cls 文件,我尝试编辑这两个文件,但似乎都不起作用。如果我尝试从文件中删除与字体相关的部分,它根本不起作用
\documentclass[]{deedy-resume-openfont}
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{}
\begin{document}
\namesection{}{\Huge Василий Петров}{
\urlstyle{same}\href{}{}
\href{}{}\\
\href{mailto:[email protected]}{[email protected]} | +7 999 333-76-26 | \href{}{}
}
\begin{minipage}[t]{0.33\textwidth}
\section{Education}
\subsection{University of Nonsense}
\descript{Россия in Banking and Microbiology}
\location{Grad. Jun 2077 | Moscow, RU}
EMFSS Academic Award 2067 \\
\textbf{Diploma with First Class Honours}
\sectionsep
\end{minipage}
\end{document} \documentclass[]{article}
另外,我必须完整发布 .cls(名称应为 deedy-resume-openfont.cls)文件,因为我不知道哪部分可以省略
% Intro Options
\ProvidesClass{deedy-resume-openfont}[2014/04/30 CV class]
\NeedsTeXFormat{LaTeX2e}
\DeclareOption{print}{\def\@cv@print{}}
\DeclareOption*{%
\PassOptionsToClass{\CurrentOption}{article}
}
\ProcessOptions\relax
\LoadClass{article}
% Package Imports
\usepackage[hmargin=1.25cm, vmargin=0.75cm]{geometry}
\usepackage[hidelinks]{hyperref}
% Publications
\usepackage{cite}
\renewcommand\refname{\vskip -1.5cm}
% Color definitions
\usepackage[usenames,dvipsnames]{xcolor}
\definecolor{date}{HTML}{666666}
\definecolor{primary}{HTML}{2b2b2b}
\definecolor{headings}{HTML}{6A6A6A}
\definecolor{subheadings}{HTML}{333333}
% Set main fonts
\usepackage{fontspec}
\setmainfont[Color=primary, Path = fonts/lato/,BoldItalicFont=Lato-RegIta,BoldFont=Lato-Reg,ItalicFont=Lato-LigIta]{Lato-Lig}
\setsansfont[Scale=MatchLowercase,Mapping=tex-text, Path = fonts/raleway/]{Raleway-ExtraLight}
% Date command
\usepackage[absolute]{textpos}
\usepackage[UKenglish]{isodate}
\setlength{\TPHorizModule}{1mm}
\setlength{\TPVertModule}{1mm}
\newcommand{\lastupdated}{\begin{textblock}{60}(155,5)
\color{date}\fontspec[Path = fonts/raleway/]{Raleway-ExtraLight}\fontsize{8pt}{10pt}\selectfont
Last Updated on \today
\end{textblock}}
% Name command
\newcommand{\namesection}[3]{
\centering{
\fontsize{40pt}{60pt}
\fontspec[Path = fonts/lato/]{Lato-Hai}\selectfont #1
\fontspec[Path = fonts/lato/]{Lato-Lig}\selectfont #2
} \\[5pt]
\centering{
\color{headings}
\fontspec[Path = fonts/raleway/]{Raleway-Medium}\fontsize{11pt}{14pt}\selectfont #3}
\noindent\makebox[\linewidth]{\color{headings}\rule{\paperwidth}{0.4pt}}
\vspace{-15pt}
}
% Section seperators
\usepackage{titlesec}
\titlespacing{\section}{0pt}{0pt}{0pt}
\titlespacing{\subsection}{0pt}{0pt}{0pt}
\newcommand{\sectionsep}{\vspace{8pt}}
% Headings command
\titleformat{\section}{\color{headings}
\scshape\fontspec[Path = fonts/lato/]{Lato-Lig}\fontsize{16pt}{24pt}\selectfont \raggedright\uppercase}{}{0em}{}
% Subeadings command
\titleformat{\subsection}{
\color{subheadings}\fontspec[Path = fonts/lato/]{Lato-Bol}\fontsize{12pt}{12pt}\selectfont\bfseries\uppercase}{}{0em}{}
\newcommand{\runsubsection}[1]{
\color{subheadings}\fontspec[Path = fonts/lato/]{Lato-Bol}\fontsize{12pt}{12pt}\selectfont\bfseries\uppercase {#1} \normalfont}
% Descriptors command
\newcommand{\descript}[1]{
\color{subheadings}\raggedright\scshape\fontspec[Path = fonts/raleway/]{Raleway-Medium}\fontsize{11pt}{13pt}\selectfont {#1 \\} \normalfont}
% Location command
\newcommand{\location}[1]{
\color{headings}\raggedright\fontspec[Path = fonts/raleway/]{Raleway-Medium}\fontsize{10pt}{12pt}\selectfont {#1\\} \normalfont}
% Bullet Lists with fewer gaps command
\newenvironment{tightemize}{
\vspace{-\topsep}\begin{itemize}\itemsep1pt \parskip0pt \parsep0pt}
{\end{itemize}\vspace{-\topsep}}
如你所见,部分文本被替换为方框问号,部分文本则被彻底删除
答案1
我怀疑问题出在fonts/lato/
和中安装的字体版本上fonts/raleway/
。如果是这样,\tracinglostchars=2
在序言中添加该命令将向您发出警告,提示您当前字体不包含每个西里尔字母。(默认情况下,警告会默默地埋在您的文件中.log
。)
这是使用 TeX Live 2020 附带的版本的文档类的版本。将您的 TeX 版本设置为 TeX Live 2020 或更高版本,并将您的 TeX 引擎设置为 LuaLaTeX 或 XeLaTeX。
% Intro Options
\ProvidesClass{deedy-resume-openfont}[2014/04/30 CV class]
\NeedsTeXFormat{LaTeX2e}
\DeclareOption{print}{\def\@cv@print{}}
\DeclareOption*{%
\PassOptionsToClass{\CurrentOption}{article}
}
\ProcessOptions\relax
\LoadClass{article}
% Package Imports
\RequirePackage[hmargin=1.25cm, vmargin=0.75cm]{geometry}
\RequirePackage[hidelinks]{hyperref}
% Publications
\RequirePackage{cite}
\renewcommand\refname{\vskip -1.5cm}
% Color definitions
\RequirePackage[usenames,dvipsnames]{xcolor}
\definecolor{date}{HTML}{666666}
\definecolor{primary}{HTML}{2b2b2b}
\definecolor{headings}{HTML}{6A6A6A}
\definecolor{subheadings}{HTML}{333333}
% Set main fonts
\RequirePackage{fontspec}
\setmainfont{Lato}[
Scale = 1.0 ,
UprightFont=*-Light ,
BoldFont = *-Medium ,
ItalicFont = *-LightItalic ,
BoldItalicFont = *-MediumItalic,
Extension = .ttf ]
\setsansfont{Raleway}[
Scale = MatchLowercase ,
UprightFont = *-ExtraLight ,
BoldFont = *-Medium ,
ItalicFont = *-ExtraLight-Italic ,
BoldItalicFont = *-Medium-Italic ,
Extension = .otf ]
% Date command
\RequirePackage[absolute]{textpos}
\RequirePackage{babel}
\RequirePackage[UKenglish]{isodate}
\setlength{\TPHorizModule}{1mm}
\setlength{\TPVertModule}{1mm}
\newcommand{\lastupdated}{\begin{textblock}{60}(155,5)
\color{date}\normalfont\rmfamily\bfseries\fontsize{8pt}{10pt}\selectfont
Last Updated on \today
\end{textblock}}
% Name command
\newcommand{\namesection}[3]{
\centering{
\fontsize{40pt}{60pt}
\normalfont\sffamily\bfseries #1
\normalfont\sffamily \selectfont #2
} \\[5pt]
\centering{
\color{headings}
\normalfont\bfseries\fontsize{11pt}{14pt}\selectfont #3}
\noindent\makebox[\linewidth]{\color{headings}\rule{\paperwidth}{0.4pt}}
\vspace{-15pt}
}
% Section seperators
\RequirePackage{titlesec}
\titlespacing{\section}{0pt}{0pt}{0pt}
\titlespacing{\subsection}{0pt}{0pt}{0pt}
\newcommand{\sectionsep}{\vspace{8pt}}
% Headings command
\titleformat{\section}{\color{headings}
\normalfont\sffamily\scshape\fontsize{16pt}{24pt}\selectfont \raggedright\uppercase}{}{0em}{}
% Subeadings command
\titleformat{\subsection}{
\normalfont\color{subheadings}\sffamily\fontsize{12pt}{12pt}\selectfont\bfseries\uppercase}{}{0em}{}
\newcommand{\runsubsection}[1]{
{\normalfont\color{subheadings}\sffamily\fontsize{12pt}{12pt}\selectfont\bfseries\uppercase {#1}}}
% Descriptors command
\newcommand{\descript}[1]{
{\normalfont\color{subheadings}\raggedright\sffamily\scshape\bfseries\fontsize{11pt}{13pt}\selectfont {#1 \\}}}
% Location command
\newcommand{\location}[1]{
{\normalfont\color{headings}\raggedright\rmfamily\fontsize{10pt}{12pt}\selectfont {#1\\}}}
% Bullet Lists with fewer gaps command
\newenvironment{tightemize}{
\vspace{-\topsep}\begin{itemize}\itemsep1pt \parskip0pt \parsep0pt}
{\end{itemize}\vspace{-\topsep}}
我对代码本身做了一些修改,主要是用 和 替换了\fontspec
调用\rmfamily
。\sffamily
我还只使用了默认和粗体粗细。如果您想要更多粗细,可以添加。我调整了\normalfont
之后设置的命令以恢复以前的设置,删除了冗余的 XeTeX 专用命令,以便该类可以在 LuaLaTeX 中编译,并进行了一两个其他修复。(如果字体命令也使用诸如\small
和 之类的大小\Huge
,而不是固定大小,则该类也将支持诸如 之类的大小选项\documentclass[12pt]
。)
哦,您可能应该更改标题,以便声明该类的不同版本。
经过这些修改后,稍作修改的文档
\documentclass[russian, english]{deedy-resume-openfont}
\tracinglostchars=2
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{}
\begin{document}
\namesection{}{\Huge Василий Петров}{
\urlstyle{same}\href{}{}
\href{}{}
\href{mailto:[email protected]}{[email protected]} | +7 999 333-76-26 | \href{}{}
}
\begin{minipage}[t]{0.33\textwidth}
\section{Education}
\subsection{University of Nonsense}
\descript{Россия in Banking and Microbiology}
\location{Grad. Jun 2077 | Moscow, RU}
EMFSS Academic Award 2067 \\
\textbf{Diploma with First Class Honours}
\sectionsep
\end{minipage}
\end{document} \documentclass[]{article}
顺便说一下,Overleaf 给你的命令只有在你不是使用fontspec
。它们应该设置传统的 8 位字体,并且您需要一些额外的命令才能使用它们。如果不需要,您不必担心它们。