54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
|
# File 'lib/pdf/reader/cmap.rb', line 54
def process_data(data)
parser = build_parser(data)
mode = nil
instructions = []
while token = parser.parse_token(CMAP_KEYWORDS)
if token == "beginbfchar"
mode = :char
elsif token == "endbfchar"
process_bfchar_instructions(instructions)
instructions = []
mode = nil
elsif token == "beginbfrange"
mode = :range
elsif token == "endbfrange"
process_bfrange_instructions(instructions)
instructions = []
mode = nil
elsif mode == :char || mode == :range
instructions << token
end
end
end
|