File: ascii85.rb

package info (click to toggle)
ruby-pdf-reader 1.3.3-1
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 12,908 kB
  • ctags: 569
  • sloc: ruby: 8,330; makefile: 10
file content (27 lines) | stat: -rw-r--r-- 756 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# coding: utf-8

require 'ascii85'

class PDF::Reader
  module Filter # :nodoc:
    # implementation of the Ascii85 filter
    class Ascii85
      def initialize(options = {})
        @options = options
      end

      ################################################################################
      # Decode the specified data using the Ascii85 algorithm. Relies on the AScii85
      # rubygem.
      #
      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
    end
  end
end