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
|