]> source.dussan.org Git - redmine.git/commitdiff
Fix an internal server error on formatting an issue as a PDF in Japanese (#7794).
authorToshi MARUYAMA <marutosijp2@yahoo.co.jp>
Mon, 21 Mar 2011 06:14:02 +0000 (06:14 +0000)
committerToshi MARUYAMA <marutosijp2@yahoo.co.jp>
Mon, 21 Mar 2011 06:14:02 +0000 (06:14 +0000)
Contributed by Yuki Sonoda.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@5183 e93f8b46-1217-0410-a6f0-8f06a7374b81

vendor/plugins/rfpdf/lib/rfpdf/japanese.rb

index 4e611a6f696300689cb5a9ba927ef5e36e067cea..f8761481870176586837d4900c5d51058545e0c7 100644 (file)
@@ -36,7 +36,7 @@
 # module.
 
 module PDF_Japanese
-
+  CONTROL_CHARACTERS = (0x00...0x20).inject({}){|map, c| map[c.chr] = 278; map }.freeze
   SJIS_widths={' ' => 278, '!' => 299, '"' => 353, '#' => 614, '$' => 614, '%' => 721, '&' => 735, '\'' => 216, 
        '(' => 323, ')' => 323, '*' => 449, '+' => 529, ',' => 219, '-' => 306, '.' => 219, '/' => 453, '0' => 614, '1' => 614, 
        '2' => 614, '3' => 614, '4' => 614, '5' => 614, '6' => 614, '7' => 614, '8' => 614, '9' => 614, ':' => 219, ';' => 219, 
@@ -46,7 +46,7 @@ module PDF_Japanese
        'Z' => 578, '[' => 316, '\\' => 614, ']' => 316, '^' => 529, '_' => 500, '`' => 387, 'a' => 509, 'b' => 566, 'c' => 478, 
        'd' => 565, 'e' => 503, 'f' => 337, 'g' => 549, 'h' => 580, 'i' => 275, 'j' => 266, 'k' => 544, 'l' => 276, 'm' => 854, 
        'n' => 579, 'o' => 550, 'p' => 578, 'q' => 566, 'r' => 410, 's' => 444, 't' => 340, 'u' => 575, 'v' => 512, 'w' => 760, 
-       'x' => 503, 'y' => 529, 'z' => 453, '{' => 326, '|' => 380, '}' => 326, '~' => 387}
+       'x' => 503, 'y' => 529, 'z' => 453, '{' => 326, '|' => 380, '}' => 326, '~' => 387}.merge(CONTROL_CHARACTERS).freeze
 
   def AddCIDFont(family,style,name,cw,cMap,registry)   
     fontkey=family.downcase+style.upcase