class PDF::Reader::Filter::Ascii85

implementation of the Ascii85 filter

Public Class Methods

new(options = {}) click to toggle source

: (?Hash[untyped, untyped]) -> void

# File lib/pdf/reader/filter/ascii85.rb, line 13
def initialize(options = {})
  @options = options
end

Public Instance Methods

filter(data) click to toggle source
Decode the specified data using the Ascii85 algorithm. Relies on the AScii85
rubygem.

: (String) -> String

# File lib/pdf/reader/filter/ascii85.rb, line 22
def filter(data)
  data = "<~#{data}" unless data.to_s[0,2] == "<~"
  if defined?(::Ascii85Native)
    ::Ascii85Native::decode(data)
  else
    ::Ascii85::decode(data)
  end
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