pdfinfo 1.1.0 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
 - data/lib/pdfinfo.rb +12 -1
 - metadata +2 -2
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA1:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: 9c599fc8f36c8f2eaad1d072b30b702d1abc9283
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: 886c3593bd2bd6159ecca069c748265f14ad126c
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: 901d3defb09ac65a5e1086e746f8a3d242efffc8e85b99159623f538a273d8b463b49002a95658a53f38ba0e94bb6df764726030111014cc8d1418c0bae40068
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: 6547e5457cdd88dfbcf2506208ce8dc2c501431806e5c6dc342aab0de84aef3f508dc0a71c451cb2a39313440ec8b5f4ef41fd5bc5decc65b69e310f2ef8acc9
         
     | 
    
        data/lib/pdfinfo.rb
    CHANGED
    
    | 
         @@ -1,5 +1,6 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            require 'open3'
         
     | 
| 
       2 
2 
     | 
    
         
             
            require 'shellwords'
         
     | 
| 
      
 3 
     | 
    
         
            +
            require 'time'
         
     | 
| 
       3 
4 
     | 
    
         | 
| 
       4 
5 
     | 
    
         
             
            class Pdfinfo
         
     | 
| 
       5 
6 
     | 
    
         
             
              DIMENSIONS_REGEXP = /([\d\.]+) x ([\d\.]+)/
         
     | 
| 
         @@ -69,7 +70,7 @@ class Pdfinfo 
     | 
|
| 
       69 
70 
     | 
    
         
             
                @pdf_version    = info_hash['PDF version']
         
     | 
| 
       70 
71 
     | 
    
         | 
| 
       71 
72 
     | 
    
         
             
                @keywords       = (info_hash['Keywords'] || '').split(/\s/)
         
     | 
| 
       72 
     | 
    
         
            -
                @creation_date  =  
     | 
| 
      
 73 
     | 
    
         
            +
                @creation_date  = parse_time(info_hash['CreationDate'])
         
     | 
| 
       73 
74 
     | 
    
         | 
| 
       74 
75 
     | 
    
         
             
                raw_usage_rights = Hash[info_hash['Encrypted'].scan(/(\w+):(\w+)/)]
         
     | 
| 
       75 
76 
     | 
    
         
             
                booleanize_usage_right = lambda {|val| !(raw_usage_rights[val] == 'no') }
         
     | 
| 
         @@ -101,6 +102,9 @@ class Pdfinfo 
     | 
|
| 
       101 
102 
     | 
    
         
             
                @usage_rights[:add_notes]
         
     | 
| 
       102 
103 
     | 
    
         
             
              end
         
     | 
| 
       103 
104 
     | 
    
         | 
| 
      
 105 
     | 
    
         
            +
              def to_hash
         
     | 
| 
      
 106 
     | 
    
         
            +
                instance_variables.inject({}) {|h, var| h[var[1..-1].to_sym] = instance_variable_get(var); h }
         
     | 
| 
      
 107 
     | 
    
         
            +
              end
         
     | 
| 
       104 
108 
     | 
    
         
             
              private
         
     | 
| 
       105 
109 
     | 
    
         
             
              def presence(val)
         
     | 
| 
       106 
110 
     | 
    
         
             
                (val.nil? || val.empty?) ? nil : val
         
     | 
| 
         @@ -114,4 +118,11 @@ class Pdfinfo 
     | 
|
| 
       114 
118 
     | 
    
         
             
                return unless str
         
     | 
| 
       115 
119 
     | 
    
         
             
                str.match(DIMENSIONS_REGEXP).captures.map(&:to_f)
         
     | 
| 
       116 
120 
     | 
    
         
             
              end
         
     | 
| 
      
 121 
     | 
    
         
            +
             
     | 
| 
      
 122 
     | 
    
         
            +
              def parse_time(str)
         
     | 
| 
      
 123 
     | 
    
         
            +
                presence(str) ? Time.parse(str) : nil
         
     | 
| 
      
 124 
     | 
    
         
            +
              rescue ArgumentError => e
         
     | 
| 
      
 125 
     | 
    
         
            +
                warn(e.message)
         
     | 
| 
      
 126 
     | 
    
         
            +
                nil
         
     | 
| 
      
 127 
     | 
    
         
            +
              end
         
     | 
| 
       117 
128 
     | 
    
         
             
            end
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,14 +1,14 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: pdfinfo
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 1. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 1.2.0
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Ryan Venegas
         
     | 
| 
       8 
8 
     | 
    
         
             
            autorequire: 
         
     | 
| 
       9 
9 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       10 
10 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       11 
     | 
    
         
            -
            date: 2014-11- 
     | 
| 
      
 11 
     | 
    
         
            +
            date: 2014-11-22 00:00:00.000000000 Z
         
     | 
| 
       12 
12 
     | 
    
         
             
            dependencies:
         
     | 
| 
       13 
13 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       14 
14 
     | 
    
         
             
              name: bundler
         
     |