diff options
author | Ralph Amissah <ralph@amissah.com> | 2012-01-23 21:27:53 -0500 |
---|---|---|
committer | Ralph Amissah <ralph@amissah.com> | 2012-01-23 21:28:50 -0500 |
commit | 7e9a59cab2283aea8155fca3187e58011851bf6f (patch) | |
tree | b73a4fcca3b6f50196b25ea98d7cf3a0a5e047bf /lib | |
parent | v3 v3dv: urls, odt maintenance path fix (diff) |
v3 v3dv: texpdf, tampering with "safe" special character transformations, a fix
* could introduce new issues, watch
* [reported by Timothy Hume, pdf title bug "&" not represented]
Diffstat (limited to 'lib')
-rw-r--r-- | lib/sisu/v3/texpdf_format.rb | 9 | ||||
-rw-r--r-- | lib/sisu/v3dv/texpdf_format.rb | 9 |
2 files changed, 18 insertions, 0 deletions
diff --git a/lib/sisu/v3/texpdf_format.rb b/lib/sisu/v3/texpdf_format.rb index 43008c3d..76fc5d37 100644 --- a/lib/sisu/v3/texpdf_format.rb +++ b/lib/sisu/v3/texpdf_format.rb @@ -1366,6 +1366,14 @@ WOK '^\copyright \textnormal{\1} \2') # watch likely to be problematic str end + def special_characters_safe_close(str) + str.gsub!(/<=tilde>/,'{$\tilde$}') + str.gsub!(/<=hash>/,'{\#}') + str.gsub!(/<=amp>/,'{\\\&}') #changed ... 2005 + str.gsub!(/<=copymark>\s*(.+)/, + '^\copyright \textnormal{\1} \2') # watch likely to be problematic + str + end def special_characters_code_fix(str) str.gsub!(/<=tilde>/,'{$\tilde$}') str @@ -1398,6 +1406,7 @@ WOK str,is=@txt,@is str=xetex_special_characters_1(str,is) unless str.nil? str=xetex_special_characters_2(str,is) unless str.nil? # remove this to start with, causes issues + str=special_characters_safe_close(str) unless str.nil? @txt=str end def characters_code_listings #special characters - some substitutions are sequence sensitive, rearrange with care. diff --git a/lib/sisu/v3dv/texpdf_format.rb b/lib/sisu/v3dv/texpdf_format.rb index d059934d..a4b590a1 100644 --- a/lib/sisu/v3dv/texpdf_format.rb +++ b/lib/sisu/v3dv/texpdf_format.rb @@ -1366,6 +1366,14 @@ WOK '^\copyright \textnormal{\1} \2') # watch likely to be problematic str end + def special_characters_safe_close(str) + str.gsub!(/<=tilde>/,'{$\tilde$}') + str.gsub!(/<=hash>/,'{\#}') + str.gsub!(/<=amp>/,'{\\\&}') #changed ... 2005 + str.gsub!(/<=copymark>\s*(.+)/, + '^\copyright \textnormal{\1} \2') # watch likely to be problematic + str + end def special_characters_code_fix(str) str.gsub!(/<=tilde>/,'{$\tilde$}') str @@ -1398,6 +1406,7 @@ WOK str,is=@txt,@is str=xetex_special_characters_1(str,is) unless str.nil? str=xetex_special_characters_2(str,is) unless str.nil? # remove this to start with, causes issues + str=special_characters_safe_close(str) unless str.nil? @txt=str end def characters_code_listings #special characters - some substitutions are sequence sensitive, rearrange with care. |