我使用pdflatex生成pdf文件。由于非英文字符,我的源文件都是utf-8编码。没有\usepackage{hyperref}
代码,它们可以毫无问题地编译。但是当我在包列表中放置\usepackage{hyperref}
(即使没有任何\href{}{}
代码)时,会出现错误,说
**************************************
! Use of \@chapter doesn't match its definition.
\CJK@altchar ...fx \csname \reserved@a \endcsname
\relax \CJKsymbol {\@tempc...
l.1 \chapter{XXX}
?
**************************************
其中“XXX”代表非英文字符。
然后我搜索了很多,找到原因是hyperref使用pdftex驱动程序,这不适用于utf-8编码文件。我查看了这个页面:http://www.tug.org/applications/hyperref/manual.html,但找不到适合pdflatex的驱动程序。
我试过了\usepackage[utf8]{inputenc}
,但仍无法让它发挥作用。
所以任何人都可以帮助我?谢谢!
答案 0 :(得分:4)
您是否尝试使用\usepackage[unicode]{hyperref}
加载hyperref,或者等效地在之后指定\hypersetup{ unicode = true }
?这使您可以在书签中使用unicode字符。
答案 1 :(得分:1)
试试这个,对我有用。而不是:
\usepackage[pdftex, unicode,
pdfauthor={çç êÊ},
pdftitle={T\'{o}picos Avançados ôô},
pdfsubject={Trabalho 6},
pdfkeywords={a1, a2},
pdfproducer={Latex with hyperref},
pdfcreator={pdflatex}]{hyperref}
我做:
\usepackage[pdftex, unicode,
pdfproducer={Latex with hyperref},
pdfcreator={pdflatex}]{hyperref}
\hypersetup{
pdfauthor={çç êÊ},
pdftitle={T\'{o}picos Avançados ôô},
pdfsubject={Trabalho 6},
pdfkeywords={a1, a2},
}
我希望它也适合你。