rapinoe 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 8083765a41f1f16ac3f27437aeb472643f3ecbeb
4
- data.tar.gz: 4ba3fe8a1d61f1532f7ec1adad89cb8bc501d056
3
+ metadata.gz: f2d2efa66e8d1a9668090278f7bb6d4d28399e64
4
+ data.tar.gz: e8eef417878003d8c22638acdae775d75e700277
5
5
  SHA512:
6
- metadata.gz: 25ebc104a907fd00161a1856996d918970430f4c200b6bea8c1efe625d7e703e3d334584364050881ce59386bace30a3c84c46f2d999dcf3799d8d08d835fb2f
7
- data.tar.gz: ae209d8891c6ad000d42c5012e897bb9bcb2678665f78916e716a967aca06d7786ce602068499c9095014fdd9d9cfeef1a507d518b308753537271efb705f3f4
6
+ metadata.gz: fc8567c0c481baf1c52ea6fbdeaf420abab1763763539cbec81304502169981c68b3216c29542c20b2f89e7e206868e3391a1d468f177f67f9ceead709c385ab
7
+ data.tar.gz: c060065d04005b5a4abb2670fb187ef2dee63df5fe4373c0cd3a721453aa0d450db87db44762b8125534bd34417a3b5b8f82c15448775b4ed452acf50ff1e539
data/Gemfile.lock CHANGED
@@ -1,12 +1,16 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- rapinoe (0.0.1)
5
- rubyzip (~> 1.1.7)
4
+ rapinoe (0.0.2)
5
+ fastimage (~> 1.8.1)
6
+ rubyzip (~> 1.1, >= 1.1.7)
6
7
 
7
8
  GEM
8
9
  remote: http://rubygems.org/
9
10
  specs:
11
+ addressable (2.4.0)
12
+ fastimage (1.8.1)
13
+ addressable (~> 2.3, >= 2.3.5)
10
14
  rubyzip (1.1.7)
11
15
 
12
16
  PLATFORMS
data/README.md CHANGED
@@ -26,4 +26,7 @@ rapinoe.slides
26
26
 
27
27
  rapinoe.slides.first.write_preview_to_file("/tmp/slide-preview.jpg")
28
28
  # => writes the Keynote-generated slide preview to a file
29
+
30
+ rapinoe.widescreen?
31
+ # => true
29
32
  ```
@@ -25,6 +25,28 @@ module Rapinoe
25
25
  File.size(path)
26
26
  end
27
27
 
28
+ # The aspect ratio of the deck.
29
+ #
30
+ # Returns a Symbol, either :widescreen or :standard (4:3).
31
+ def aspect_ratio
32
+ path = "/tmp/rapinoe-aspect"
33
+ write_preview_to_file(path)
34
+
35
+ dimensions = FastImage.size(path)
36
+ widescreen = (16/9.0)
37
+
38
+ if widescreen == (dimensions[0] / dimensions[1].to_f)
39
+ :widescreen
40
+ else
41
+ :standard
42
+ end
43
+ end
44
+
45
+ # Is it widescreen? Does it blend?
46
+ def widescreen?
47
+ aspect_ratio == :widescreen
48
+ end
49
+
28
50
  def slides
29
51
  @data.glob("Data/st*").map do |preview_jpg_data|
30
52
  Slide.new(preview_jpg_data.get_input_stream.read)
data/lib/rapinoe.rb CHANGED
@@ -1,10 +1,11 @@
1
+ require 'fastimage'
1
2
  require 'zip'
2
3
 
3
4
  require_relative 'rapinoe/keynote'
4
5
  require_relative 'rapinoe/slide'
5
6
 
6
7
  module Rapinoe
7
- VERSION = '0.0.2'
8
+ VERSION = '0.0.3'
8
9
 
9
10
  def self.new(path)
10
11
  Keynote.new(path)
data/rapinoe.gemspec CHANGED
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'rapinoe'
3
- s.version = '0.0.2'
3
+ s.version = '0.0.3'
4
4
  s.licenses = ['MIT']
5
5
  s.summary = "Parse Keynote files in Ruby."
6
6
  s.description = "Rapinoe is designed to parse the native files for Apple's Keynote presentation software. Its main focus is to help extract previews and general metadata about the presentation."
@@ -9,6 +9,7 @@ Gem::Specification.new do |s|
9
9
  s.files = ["lib/rapinoe.rb"]
10
10
  s.homepage = 'https://github.com/holman/rapinoe'
11
11
  s.require_paths = %w[lib]
12
+ s.add_runtime_dependency 'fastimage', '~> 1.8.1'
12
13
  s.add_runtime_dependency 'rubyzip', '~> 1.1', '>= 1.1.7'
13
14
 
14
15
  # = MANIFEST =
data/test/test_keynote.rb CHANGED
@@ -27,6 +27,14 @@ class TestKeynote < Test::Unit::TestCase
27
27
  assert_not_nil @keynote.data
28
28
  end
29
29
 
30
+ def test_aspect_ratio
31
+ assert_equal :widescreen, @keynote.aspect_ratio
32
+ end
33
+
34
+ def test_widescreen
35
+ assert @keynote.widescreen?
36
+ end
37
+
30
38
  def test_preview_data
31
39
  assert_equal 32858, @keynote.preview_data.size
32
40
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rapinoe
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Zach Holman
@@ -10,6 +10,20 @@ bindir: bin
10
10
  cert_chain: []
11
11
  date: 2016-01-16 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: fastimage
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: 1.8.1
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: 1.8.1
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: rubyzip
15
29
  requirement: !ruby/object:Gem::Requirement