diff options
author | Karl Berry <karl@freefriends.org> | 2009-12-19 23:10:16 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2009-12-19 23:10:16 +0000 |
commit | 929d8005a93b27f29b4ed481f31d62f92f67d28b (patch) | |
tree | 38fc2116fb592eb8ee67616f64b99044e9178039 /Master/texmf-dist/doc/latex/hyperref/README | |
parent | 833fac303840a0d9e1e98aef77414e044b7cff6d (diff) |
hyperref update (19dec09)
git-svn-id: svn://tug.org/texlive/trunk@16451 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/latex/hyperref/README')
-rw-r--r-- | Master/texmf-dist/doc/latex/hyperref/README | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/hyperref/README b/Master/texmf-dist/doc/latex/hyperref/README index bb594ecaf1a..69de8de9969 100644 --- a/Master/texmf-dist/doc/latex/hyperref/README +++ b/Master/texmf-dist/doc/latex/hyperref/README @@ -1097,6 +1097,46 @@ vietnam \usepackage{vietnam} \usepackage{hyperref} +XeTeX +----- + Default for the encoding of bookmarks is `pdfencoding=auto'. + That means the strings are always treated as unicode strings. + Only if the string restricts to the printable ASCII set, + it is written as ASCII string. The reason is that the + \special does not support PDFDocEncoding. + + XeTeX uses the program xdvipdfmx for PDF output generation. + This program behaves a little different from dvipdfm, because + of the supported Unicode characters. Strings for bookmarks + or information entries can be output directly. The + big chars (char code > 255) are written in UTF-8 and + xdvipdfmx tries to convert them to UTF-16BE. However + hyperref already provides PDF strings encoded in UTF-16BE, + thus the result is a warning + "Failed to convert input string to UTF16..." + The best way would be, if xdvipdfm could detect the + byte order marker (\376\377) and skips the conversion + if that marker is present. + For the time being I added the following to hyperref, + when option `pdfencoding=auto' is set (default for XeTeX): + The string is converted back to big characters thus that the + string is written as UTF-8. But I am very unhappy with this + solution. Main disadvantage: + Two versions of \pdfstringdef are needed: + a) The string is converted back to big characters for + the "tainted keys" of xdvipdfmx (spc_pdfm.c: default_taintkeys). + The subset hyperref uses is /Title, /Author, /Subject, + /Keywords, /Creator, /Producer, /T. Any changes of this + set in xdvipdfmx cannot be detected by hyperref. + b) Without conversion for the other strings , providing UTF16be + directly. Examples: Prefix of page labels, some elements + of formulars. + Thus *each* application that uses \pdfstringdef now must + check, if it defines a string for some of the tained keys. + If yes, then the call of \pdfstringdef should be preceded + by "\csname HyPsd@XeTeXBigCharstrue\endcsname". + Example: package bookmark. + 7 LIMITATIONS ============= |