Я пытаюсь определить физическую ширину пикселя строки.
например:
FONT_SIZE = 10
str="123456789"
width = str.length * FONT_SIZE # which will be 9 * 10 = 90px
ПРОБЛЕМА: Но для китайского, японского или корейского:
FONT_SIZE = 10
str="一二三四五六七八九"
width = str.length * FONT_SIZE # this still result in 90 (9*10)
Но это действительно должно быть 180, так как они по 2 символа на каждого символа.
Как мне сделать эту функцию (возвращает true / false)?
def is_wide_char char
#how to?
end
class String
def wlength
l = 0
self.each{|c| is_wide_char(c)? l+=2: l+=1}
l
end
end