diff options
author | Hans Hagen <pragma@wxs.nl> | 2017-03-20 18:51:53 +0100 |
---|---|---|
committer | Context Git Mirror Bot <phg42.2a@gmail.com> | 2017-03-20 18:51:53 +0100 |
commit | 8e0089484acf80066e7393b1245d59dda211be09 (patch) | |
tree | a444a174ea8de55816cb4a9c3def00fb4521e7d8 /tex/context/base/mkiv/lpdf-ini.lua | |
parent | 8f5c555274eb48fcaaa3d7f340ee77710846fb7e (diff) | |
download | context-8e0089484acf80066e7393b1245d59dda211be09.tar.gz |
2017-03-20 17:38:00
Diffstat (limited to 'tex/context/base/mkiv/lpdf-ini.lua')
-rw-r--r-- | tex/context/base/mkiv/lpdf-ini.lua | 28 |
1 files changed, 18 insertions, 10 deletions
diff --git a/tex/context/base/mkiv/lpdf-ini.lua b/tex/context/base/mkiv/lpdf-ini.lua index b4c8be7b1..1b24269a6 100644 --- a/tex/context/base/mkiv/lpdf-ini.lua +++ b/tex/context/base/mkiv/lpdf-ini.lua @@ -1188,15 +1188,17 @@ end do - local f_actual_text_one = formatters["BT /Span << /ActualText <feff%04x> >> BDC %s EMC ET"] - local f_actual_text_two = formatters["BT /Span << /ActualText <feff%04x%04x> >> BDC %s EMC ET"] - local f_actual_text_one_b = formatters["BT /Span << /ActualText <feff%04x> >> BDC"] - local f_actual_text_two_b = formatters["BT /Span << /ActualText <feff%04x%04x> >> BDC"] - local f_actual_text_b = formatters["BT /Span << /ActualText <feff%s> >> BDC"] - local s_actual_text_e = "EMC ET" - local f_actual_text_b_not = formatters["/Span << /ActualText <feff%s> >> BDC"] - local s_actual_text_e_not = "EMC" - local f_actual_text = formatters["/Span <</ActualText %s >> BDC"] + local f_actual_text_one = formatters["BT /Span << /ActualText <feff%04x> >> BDC %s EMC ET"] + local f_actual_text_two = formatters["BT /Span << /ActualText <feff%04x%04x> >> BDC %s EMC ET"] + local f_actual_text_one_b = formatters["BT /Span << /ActualText <feff%04x> >> BDC"] + local f_actual_text_two_b = formatters["BT /Span << /ActualText <feff%04x%04x> >> BDC"] + local f_actual_text_b = formatters["BT /Span << /ActualText <feff%s> >> BDC"] + local s_actual_text_e = "EMC ET" + local f_actual_text_b_not = formatters["/Span << /ActualText <feff%s> >> BDC"] + local f_actual_text_one_b_not = formatters["/Span << /ActualText <feff%04x> >> BDC"] + local f_actual_text_two_b_not = formatters["/Span << /ActualText <feff%04x%04x> >> BDC"] + local s_actual_text_e_not = "EMC" + local f_actual_text = formatters["/Span <</ActualText %s >> BDC"] local context = context local pdfdirect = nodes.pool.pdfdirect @@ -1226,7 +1228,13 @@ do end function codeinjections.startunicodetoactualtextdirect(unicode) - return f_actual_text_b_not(unicode) + if type(unicode) == "string" then + return f_actual_text_b_not(unicode) + elseif unicode < 0x10000 then + return f_actual_text_one_b_not(unicode) + else + return f_actual_text_two_b_not(unicode/1024+0xD800,unicode%1024+0xDC00) + end end function codeinjections.stopunicodetoactualtextdirect() |