Проблема с гиперрефракцией LaTeX

У меня есть URL с кириллическими символами:

http://www.pravoslavie.bg/Възпитание/Духовно-и-светско-образование

когда я компилирую документ, я получаю следующий URL:

http://www.pravoslavie.bg/%5CT2A%5CCYRV%20%5CT2A%5Ccyrhrdsn%20%5CT2A%5Ccyrz%20%5CT2A%5Ccyrp%20%5CT2A%5Ccyri%20%5CT2A%5Ccyrt%20%5CT2A%5Ccyra%20%5CT2A%5Ccyrn%20%5CT2A%5Ccyri%20%5CT2A%5Ccyre%20/%5CT2A%5CCYRD%20%5CT2A%5Ccyru%20%5CT2A%5Ccyrh%20%5CT2A%5Ccyro%20%5CT2A%5Ccyrv%20%5CT2A%5Ccyrn%20%5CT2A%5Ccyro%20-%5CT2A%5Ccyri%20-%5CT2A%5Ccyrs%20%5CT2A%5Ccyrv%20%5CT2A%5Ccyre%20%5CT2A%5Ccyrt%20%5CT2A%5Ccyrs%20%5CT2A%5Ccyrk%20%5CT2A%5Ccyro%20-%5CT2A%5Ccyro%20%5CT2A%5Ccyrb%20%5CT2A%5Ccyrr%20%5CT2A%5Ccyra%20%5CT2A%5Ccyrz%20%5CT2A%5Ccyro%20%5CT2A%5Ccyrv%20%5CT2A%5Ccyra%20%5CT2A%5Ccyrn%20%5CT2A%5Ccyri%20%5CT2A%5Ccyre

и это не то же самое. Могу ли я установить кодировку utf8 для hyperref? Или как я могу решить проблему?

6 ответов

Решение

@Mike Weller: у меня уже есть \usepackage[utf8]{inputenc} в моем документе, с utf8x я получаю следующее как url:

http://www.pravoslavie.bg/\begingroup\let\relax\relax\
endgroup[Pleaseinsert\PrerenderUnicode{Ð}intopreamble]\begingroup\let\relax\relax\
endgroup[Pleaseinsert\PrerenderUnicode{Ñ}intopreamble]\begingroup\let\relax\relax\
endgroup[Pleaseinsert\PrerenderUnicode{з}intopreamble]\begingroup\let\relax\relax\
endgroup[Pleaseinsert\PrerenderUnicode{п}intopreamble]\begingroup\let\relax\relax\
endgroup[Pleaseinsert\PrerenderUnicode{Ð ̧}intopreamble]\begingroup\let\relax\relax\
endgroup[Pleaseinsert\PrerenderUnicode{Ñ}intopreamble]\begingroup\let\relax\relax\
endgroup[Pleaseinsert\PrerenderUnicode{а}intopreamble]\begingroup\let\relax\relax\
endgroup[Pleaseinsert\PrerenderUnicode{Ð1⁄2}intopreamble]\begingroup\let\relax\relax\
endgroup[Pleaseinsert\PrerenderUnicode{Ð ̧}intopreamble]\begingroup\let\relax\relax\
endgroup[Pleaseinsert\PrerenderUnicode{Ðμ}intopreamble]/\begingroup\let\relax\
relax\endgroup[Pleaseinsert\PrerenderUnicode{Ð}intopreamble]\begingroup\let\relax\
relax\endgroup[Pleaseinsert\PrerenderUnicode{Ñ}intopreamble]\begingroup\let\relax\
relax\endgroup[Pleaseinsert\PrerenderUnicode{Ñ}intopreamble]\begingroup\let\relax\
relax\endgroup[Pleaseinsert\PrerenderUnicode{Ð3⁄4}intopreamble]\begingroup\let\relax\
relax\endgroup[Pleaseinsert\PrerenderUnicode{Ð2}intopreamble]\begingroup\let\relax\
relax\endgroup[Pleaseinsert\PrerenderUnicode{Ð1⁄2}intopreamble]\begingroup\let\relax\
relax\endgroup[Pleaseinsert\PrerenderUnicode{Ð3⁄4}intopreamble]-\begingroup\let\
relax\relax\endgroup[Pleaseinsert\PrerenderUnicode{Ð ̧}intopreamble]-\begingroup\
let\relax\relax\endgroup[Pleaseinsert\PrerenderUnicode{Ñ}intopreamble]\begingroup\
let\relax\relax\endgroup[Pleaseinsert\PrerenderUnicode{Ð2}intopreamble]\begingroup\
let\relax\relax\endgroup[Pleaseinsert\PrerenderUnicode{Ðμ}intopreamble]\begingroup\
let\relax\relax\endgroup[Pleaseinsert\PrerenderUnicode{Ñ}intopreamble]\begingroup\
let\relax\relax\endgroup[Pleaseinsert\PrerenderUnicode{Ñ}intopreamble]\begingroup\
let\relax\relax\endgroup[Pleaseinsert\PrerenderUnicode{Ðo}intopreamble]\begingroup\
let\relax\relax\endgroup[Pleaseinsert\PrerenderUnicode{Ð3⁄4}intopreamble]-\
begingroup\let\relax\relax\endgroup[Pleaseinsert\PrerenderUnicode{Ð3⁄4}intopreamble]
\begingroup\let\relax\relax\endgroup[Pleaseinsert\PrerenderUnicode{б}intopreamble]
\begingroup\let\relax\relax\endgroup[Pleaseinsert\PrerenderUnicode{Ñ}intopreamble]
\begingroup\let\relax\relax\endgroup[Pleaseinsert\PrerenderUnicode{а}intopreamble]
\begingroup\let\relax\relax\endgroup[Pleaseinsert\PrerenderUnicode{з}intopreamble]
\begingroup\let\relax\relax\endgroup[Pleaseinsert\PrerenderUnicode{Ð3⁄4}intopreamble]
\begingroup\let\relax\relax\endgroup[Pleaseinsert\PrerenderUnicode{Ð2}intopreamble]
\begingroup\let\relax\relax\endgroup[Pleaseinsert\PrerenderUnicode{а}intopreamble]
\begingroup\let\relax\relax\endgroup[Pleaseinsert\PrerenderUnicode{Ð1⁄2}intopreamble]
\begingroup\let\relax\relax\endgroup[Pleaseinsert\PrerenderUnicode{Ð ̧}intopreamble]
\begingroup\let\relax\relax\endgroup[Pleaseinsert\PrerenderUnicode{Ðμ}intopreamble]D

редактировать: проблема решена - я использовал URL-кодировку для преобразования кириллических символов:)

У меня была похожая проблема с полем pdftitle.

разделение объявления об использовании и настройка сделали его работать правильно

\usepackage{hyperref}
\hypersetup{
pdftitle=Priorità
}

Если вы счастливы не использовать \url Команда (т. е. вам нужно будет разбивать строки вручную) вы можете сделать следующее в обычном LaTeX:

\ Documentclass {статья}
\ Usepackage[Т2А]{fontenc}
\ Usepackage[utf8]{inputenc}
\ Начать {документ}
\ Texttt{http://www.pravoslavie.bg/Възпитание/Духовно-и-светско-образование}
\ Конец {документ}

Если вам нужно, чтобы гиперссылки работали, мое единственное предложение на данный момент - использовать XeTeX или LuaTeX, чтобы иметь возможность использовать правильный ввод / вывод в Unicode. Что-то вроде следующего производит по крайней мере правильно выглядящий вывод в XeTeX, хотя сама гиперссылка по какой-то причине не работает :(

\ Documentclass {статья}
\ Usepackage {FontSpec,hyperref}
\setmonofont{Arial Unicode MS}
\ Начать {документ}
\ {URL} http://www.pravoslavie.bg/Възпитание/Духовно-и-светско-образование
\ Конец {документ}

Если это, как полагают другие авторы, является проблемой кодировки, убедитесь, что кодировка символов для источника bibtex и документа tex совпадают. Ср Q#1635788: Различная кодировка латексных и бибтексных файлов. Вам не нужно делать обе кодировки символов utf8; Стоит подумать, что latin-5 или KOI8-R будут работать, но это лучше всего поддерживается.

Если это не так, то в соответствии с моим комментарием выше: посмотрите на цепочку программного обеспечения, которую вы используете: editor, makefiles, &c, чтобы узнать, что-то делает для вас нежелательный выход URL. Тогда безжалостно разберитесь с оскорбительным программным обеспечением

Предполагая, что ваш источник LaTeX имеет кодировку utf8, попробуйте добавить \usepackage[utf8]{inputenc} к вашему документу. Если utf8 не работает, попробуйте utf8x. Смотрите здесь

\usepackage[unicode]{hyperref}

работал для меня (по крайней мере, с июня 2010 года), используя текстовый дистрибутив (не уверен, что это актуально).

Другие вопросы по тегам