Драйвер pdftex пакета hyperref не работает с файлами.tex в кодировке utf-8
Я использую 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}
, но все еще не мог заставить это работать.
чтобы кто-нибудь мог мне помочь? благодарю вас!
2 ответа
Вы пробовали загружать hyperref используя \usepackage[unicode]{hyperref}
или, что эквивалентно, указав \hypersetup{ unicode = true }
сразу после? Это должно позволить вам использовать символы юникода в закладках.
Попробуйте это, у меня работает. Вместо:
\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},
}
Я надеюсь, что это работает и для вас.