Class: PDF::Reader::Filter::Ascii85

Inherits:
Object
  • Object
show all
Defined in:
lib/pdf/reader/filter/ascii85.rb

Overview

implementation of the Ascii85 filter

Instance Method Summary collapse

Constructor Details

#initialize(options = {}) ⇒ Ascii85

Returns a new instance of Ascii85.



9
10
11
# File 'lib/pdf/reader/filter/ascii85.rb', line 9

def initialize(options = {})
  @options = options
end

Instance Method Details

#filter(data) ⇒ Object

Decode the specified data using the Ascii85 algorithm. Relies on the AScii85 rubygem.



17
18
19
20
21
22
23
24
# File 'lib/pdf/reader/filter/ascii85.rb', line 17

def filter(data)
  data = "<~#{data}" unless data.to_s[0,2] == "<~"
  ::Ascii85::decode(data)
rescue Exception => e
  # Oops, there was a problem decoding the stream
  raise MalformedPDFError,
    "Error occured while decoding an ASCII85 stream (#{e.class.to_s}: #{e.to_s})"
end