asposeslides 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 +4 -4
- data/README.md +2 -0
- data/config/aspose.yml +1 -0
- data/lib/asposeslides/version.rb +1 -1
- data/lib/asposeslides.rb +36 -5
- data/spec/asposeslides_spec.rb +5 -0
- data/spec/data/image001.jpg +0 -0
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f52e417702c4ccaf1bd7c833eebafbccabab1201
|
4
|
+
data.tar.gz: e91f142a87d68227ba3900fae3f8d688cc2f00f6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7c771922708de44ada8f668b3563e7dde9b5bcf378dbb10ead7370a08418e017e546ded0283f4099c38a6be7725fdf6f5b74968a4604387cd814155fcf8e50bc
|
7
|
+
data.tar.gz: bd987278fea6049a67ed0f9fd06f117ac00df2b313ad72bc95d5d734c408cf7626a3c35a717676f680d2e7f6104e7d9d74c784558b5da91a7b7c2318bd84b34c
|
data/README.md
CHANGED
@@ -24,8 +24,10 @@ Or install it yourself as:
|
|
24
24
|
```yaml
|
25
25
|
development:
|
26
26
|
jar_dir: /path/to/your/asposeslides/jars/directory
|
27
|
+
license_path: /path/to/your/asposeslides/license/path
|
27
28
|
test:
|
28
29
|
jar_dir: /path/to/your/asposeslides/jars/directory
|
30
|
+
license_path: /path/to/your/asposeslides/license/path
|
29
31
|
```
|
30
32
|
* Next you need to initialize the aspose library. Aspose is a paid library and therefor you need to buy the appropriate license and provide the path to the licensed java library to initialize the gem.
|
31
33
|
* Create a file called aspose.rb under the initializer app/config/initializers folder. Put the following lines in the file
|
data/config/aspose.yml
CHANGED
data/lib/asposeslides/version.rb
CHANGED
data/lib/asposeslides.rb
CHANGED
@@ -10,21 +10,52 @@ module Asposeslides
|
|
10
10
|
end
|
11
11
|
|
12
12
|
def initialize_aspose
|
13
|
-
|
13
|
+
aspose_jars_dir = Asposeslides.aspose_slides_config ? Asposeslides.aspose_slides_config['jar_dir'] : nil
|
14
|
+
aspose_license_path = Asposeslides.aspose_slides_config ? Asposeslides.aspose_slides_config['license_path'] : nil
|
14
15
|
|
15
|
-
|
16
|
-
|
16
|
+
load_aspose_jars(aspose_jars_dir)
|
17
|
+
load_aspose_license(aspose_license_path)
|
18
|
+
end
|
19
|
+
|
20
|
+
def load_aspose_license(aspose_license_path)
|
21
|
+
if aspose_license_path && File.exist?(aspose_license_path)
|
22
|
+
set_license(File.join(aspose_license_path))
|
17
23
|
else
|
18
24
|
logger = Logger.new(STDOUT)
|
19
25
|
logger.level = Logger::WARN
|
20
|
-
logger.warn('Using the non licensed aspose slides jar. Please specify path to your
|
21
|
-
|
26
|
+
logger.warn('Using the non licensed aspose slides jar. Please specify path to your aspose license directory in config/aspose.yml file!')
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
def load_aspose_jars(aspose_jars_dir)
|
31
|
+
if aspose_jars_dir && File.exist?(aspose_jars_dir)
|
32
|
+
jardir = File.join(aspose_jars_dir, '**', '*.jar')
|
33
|
+
else
|
34
|
+
jardir = File.join(File.dirname(File.dirname(__FILE__)), 'jars', '**', '*.jar')
|
22
35
|
end
|
23
36
|
Rjb::load(classpath = Dir.glob(jardir).join(':'), jvmargs=['-Djava.awt.headless=true'])
|
24
37
|
end
|
25
38
|
|
39
|
+
def input_file(file)
|
40
|
+
Rjb::import('java.io.FileInputStream').new(file)
|
41
|
+
end
|
42
|
+
|
43
|
+
def set_license(aspose_license_file)
|
44
|
+
begin
|
45
|
+
fstream = input_file(aspose_license_file)
|
46
|
+
license = Rjb::import('com.aspose.slides.License').new()
|
47
|
+
license.setLicense(fstream)
|
48
|
+
rescue Exception => ex
|
49
|
+
logger = Logger.new(STDOUT)
|
50
|
+
logger.level = Logger::ERROR
|
51
|
+
logger.error("Could not load the license file : #{ex}")
|
52
|
+
fstream.close() if fstream
|
53
|
+
end
|
54
|
+
|
55
|
+
end
|
26
56
|
|
27
57
|
def self.configure_aspose_slides config
|
28
58
|
Asposeslides.aspose_slides_config = config
|
29
59
|
end
|
60
|
+
|
30
61
|
end
|
data/spec/asposeslides_spec.rb
CHANGED
@@ -9,4 +9,9 @@ describe 'Asposeslides Initialization' do
|
|
9
9
|
expect(Rjb::import('com.aspose.slides.Presentation').new).not_to be_nil
|
10
10
|
end
|
11
11
|
|
12
|
+
it 'should create a input file object' do
|
13
|
+
file = File.join(File.dirname(File.dirname(__FILE__)), 'spec', 'data', 'image001.jpg')
|
14
|
+
expect(Rjb::import('java.io.FileInputStream').new(file).java_methods).to eq(input_file(file).java_methods)
|
15
|
+
end
|
16
|
+
|
12
17
|
end
|
Binary file
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: asposeslides
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sanjeev Mishra
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-01-
|
11
|
+
date: 2015-01-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -86,6 +86,7 @@ files:
|
|
86
86
|
- lib/asposeslides/version.rb
|
87
87
|
- spec/asposeslides_spec.rb
|
88
88
|
- spec/data/dest_template.pptx
|
89
|
+
- spec/data/image001.jpg
|
89
90
|
- spec/data/src_template1.pptx
|
90
91
|
- spec/data/src_template2.pptx
|
91
92
|
- spec/powerpoint_spec.rb
|
@@ -117,6 +118,7 @@ summary: A Ruby gem to work with aspose libraries
|
|
117
118
|
test_files:
|
118
119
|
- spec/asposeslides_spec.rb
|
119
120
|
- spec/data/dest_template.pptx
|
121
|
+
- spec/data/image001.jpg
|
120
122
|
- spec/data/src_template1.pptx
|
121
123
|
- spec/data/src_template2.pptx
|
122
124
|
- spec/powerpoint_spec.rb
|