我对 Latex 还不太熟悉,我正在做一个代数项目。过了一段时间,我了解到hyperref
这将有助于解决这个问题,\autoref
而不必每次都贴标签。然而,每当我尝试包含包时,由于某种原因,它会在编译中崩溃。序言是这样的
\documentclass[a4paper,11pt]{book}
\usepackage[utf8]{inputenc}
\usepackage{graphicx,wrapfig,lipsum}
\pagenumbering{arabic}
\usepackage[margin=1in]{geometry}
\usepackage{amsmath,amsthm,amssymb,amsfonts}
\usepackage{thmtools}
\setlength{\topmargin}{-1in}
\setlength{\textwidth}{7in}
\setlength{\oddsidemargin}{-.25in}
\setlength{\textheight}{9in}
\usepackage{titling}
\usepackage{tikz}
\usetikzlibrary{trees}
\usepackage{qtree}
\usetikzlibrary {positioning}
\usetikzlibrary{trees}
\usepackage[english,greek]{babel}
\newtheorem{theorem}{Θεώρημα}[chapter]
\newtheorem{corollary}{Πρόταση}[chapter]
\newtheorem{lemma}{Λήμμα}[chapter]
\newtheorem{definition}{Ορισμός}[chapter]
\usepackage{paracol}
\usepackage[T1]{fontenc}
\newenvironment{problem}[2][\en Problem]{\begin{trivlist}
\item[\hskip \labelsep {\bfseries #1}\hskip \labelsep {\bfseries #2.}]}{\end{trivlist}}
\usepackage{mathtools}
\usepackage{enumitem}
\usetikzlibrary{calc}
\usepackage{caption}
\usepackage{subcaption}
\newcommand\tikzmark[1]{%
\tikz[remember picture,overlay]\node (#1) {};%
}
\newcommand\Connect[3][]{%
\tikz[remember picture,overlay]
\draw[<->,red,>=latex,#1] (#2.north east) -- ( $ (#3.north west) + (-20pt,0) $ );%
}
\author{Χναράς Φοίβος\\ \large επιβλέπουσα: κ.Χαραλάμπους}
\title{Εισαγωγή στην Αλγεβρική Γεωμετρία \\ \large Ειδικό Θέμα}
\usepackage{hyperref}
\begin{document}
\maketitle
\tableofcontents
\chapter{Αφφινικά Αλγεβρικά σύνολα και Αγλεβρικά \en varieties \gr }
\section{Τοπολογία \en Zariski \gr }
blah blah...
\begin{paracol}{3}
\subsection*{$k^n=k\times k \times ... \times k$}
\switchcolumn \subsection*{}
\switchcolumn \subsection*{$k[X_1,...,X_n]$}
\switchcolumn \subsection*{$\bigcup$}
\switchcolumn \subsection*{}
\switchcolumn \subsection*{$\bigcup$}
\switchcolumn \subsection*{$V(S)$}
\switchcolumn \subsection*{$\rightleftarrows$}
\switchcolumn \subsection*{$S$}
\end{paracol}
\end{document}
当我尝试编译时,它失败了,并弹出消息
Argument of \bbl@tempd has an extra }. ...� Αγλεβρικά \en varieties \gr }
Paragraph ended before \bbl@tempd was complete. ...� Αγλεβρικά \en varieties \gr }
Paragraph ended before \HyPsd@@ProtectSpacesFi was complete. ...� Αγλεβρικά \en varieties \gr }
Use of \HyPsd@RemoveMask doesn't match its definition. ...� Αγλεβρικά \en varieties \gr }
Undefined control sequence. ...� Αγλεβρικά \en varieties \gr }
Extra }, or forgotten \endgroup. ...� Αγλεβρικά \en varieties \gr }
Argument of \HyPsd@CheckCatcodes has an extra }. ...� Αγλεβρικά \en varieties \gr }
以此类推。第一章是导论,没有列举。第一个问题出现在第一章(列举了)。
不用说,没有这个,hyperref
编译也没有问题。如果有人能帮忙,我将不胜感激。
答案1
将第 46 行和第 47 行替换为:
\chapter{Αφφινικά Αλγεβρικά σύνολα και Αγλεβρικά \textlatin{varieties} }
\section{Τοπολογία \textlatin{Zariski} }
而不是使用,\en
而且每当您想用英语书写时\gr
使用会更安全。\textlatin{}
答案2
第一版的宏
\newcommand{\en}{\selectlanguage{english}}
\newcommand{\gr}{\selectlanguage{greek}}
缺失修订 4。它们用于章节标题:
\chapter{Αφφινικά Αλγεβρικά σύνολα και Αγλεβρικά \en varieties \gr }
\selectlanguage
不应以这种方式使用,因为它会改变文档语言,而不仅仅是一个单词的语言。软件包babel
提供\foreignlanguage
:
\chapter{Αφφινικά Αλγεβρικά σύνολα και Αγλεβρικά \foreignlanguage{english}{varieties}}
要消除由书签字符串\selectlanguage
中\en
和中引起的错误:\gr
\pdfstringdefDisableCommands{%
\let\en\relax
\let\gr\relax
}
此外,建议使用以下选项(支持 UTF-8 字符并更好地支持书签中的数学符号):
\usepackage[pdfencoding=auto, psdextra]{hyperref}