asposecloud 1.0.0 → 1.1.2

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.
Files changed (93) hide show
  1. data/README.md +31 -9
  2. data/Tests/Barcode/builder_tests.rb +95 -0
  3. data/Tests/Barcode/reader_tests.rb +70 -0
  4. data/Tests/Cells/charteditor_tests.rb +139 -0
  5. data/Tests/Cells/converter_tests.rb +83 -0
  6. data/Tests/Cells/extractor_tests.rb +40 -0
  7. data/Tests/Cells/texteditor_tests.rb +52 -0
  8. data/Tests/Cells/workbook_tests.rb +167 -0
  9. data/Tests/Cells/worksheet_tests.rb +435 -0
  10. data/Tests/Data/barcodeQR.bmp +0 -0
  11. data/Tests/Data/barcodeQR.jpg +0 -0
  12. data/Tests/Data/barcodeQR.tiff +0 -0
  13. data/Tests/Data/bizcard.psd +0 -0
  14. data/Tests/Data/macbook.gif +0 -0
  15. data/Tests/Data/mail_merge_regions.docx +0 -0
  16. data/Tests/Data/mail_merge_template.docx +0 -0
  17. data/Tests/Data/test_cells.xlsx +0 -0
  18. data/Tests/Data/test_multi_pages.docx +0 -0
  19. data/Tests/Data/test_slides.pptx +0 -0
  20. data/Tests/Email/converter_tests.rb +30 -0
  21. data/Tests/Email/document_tests.rb +55 -0
  22. data/Tests/Imaging/converter_tests.rb +32 -0
  23. data/Tests/Imaging/document_tests.rb +132 -0
  24. data/Tests/Imaging/extractor_tests.rb +67 -0
  25. data/Tests/Imaging/image_tests.rb +55 -0
  26. data/Tests/Ocr/extractor_tests.rb +34 -0
  27. data/Tests/Pdf/annotationeditor_tests.rb +128 -0
  28. data/Tests/Pdf/converter_tests.rb +74 -0
  29. data/Tests/Pdf/document_tests.rb +285 -0
  30. data/Tests/Pdf/extractor_tests.rb +37 -0
  31. data/Tests/Pdf/texteditor_tests.rb +84 -0
  32. data/Tests/Slides/converter_tests.rb +59 -0
  33. data/Tests/Slides/document_tests.rb +187 -0
  34. data/Tests/Slides/extractor_tests.rb +92 -0
  35. data/Tests/Storage/folder_tests.rb +64 -0
  36. data/Tests/Tasks/assignments_tests.rb +44 -0
  37. data/Tests/Tasks/calendar_tests.rb +45 -0
  38. data/Tests/Tasks/converter_tests.rb +32 -0
  39. data/Tests/Tasks/document_tests.rb +114 -0
  40. data/Tests/Tasks/resources_tests.rb +44 -0
  41. data/Tests/Words/builder_tests.rb +56 -0
  42. data/Tests/Words/converter_tests.rb +54 -0
  43. data/Tests/Words/document_tests.rb +208 -0
  44. data/Tests/Words/extractor_tests.rb +120 -0
  45. data/Tests/Words/mail_merge_tests.rb +120 -0
  46. data/Tests/setup.json +6 -0
  47. data/lib/Barcode/builder.rb +270 -20
  48. data/lib/Barcode/reader.rb +112 -18
  49. data/lib/Cells/chart_editor.rb +102 -0
  50. data/lib/Cells/convertor.rb +22 -2
  51. data/lib/Cells/text_editor.rb +8 -2
  52. data/lib/Cells/workbook.rb +63 -3
  53. data/lib/Cells/worksheet.rb +479 -10
  54. data/lib/Common/utils.rb +2 -0
  55. data/lib/Email/converter.rb +2 -18
  56. data/lib/Email/document.rb +32 -17
  57. data/lib/Ocr/extractor.rb +26 -20
  58. data/lib/Pdf/annotation_editor.rb +0 -17
  59. data/lib/Pdf/converter.rb +25 -17
  60. data/lib/Pdf/document.rb +167 -23
  61. data/lib/Pdf/extractor.rb +0 -17
  62. data/lib/Pdf/text_editor.rb +35 -20
  63. data/lib/Slides/converter.rb +48 -18
  64. data/lib/Slides/document.rb +186 -51
  65. data/lib/Slides/extractor.rb +35 -18
  66. data/lib/Storage/folder.rb +30 -25
  67. data/lib/Words/builder.rb +23 -29
  68. data/lib/Words/converter.rb +30 -17
  69. data/lib/Words/document.rb +336 -28
  70. data/lib/Words/extractor.rb +112 -33
  71. data/lib/Words/mail_merge.rb +2 -20
  72. data/{Tests/word_tests.rb → lib/aspose_imaging.rb} +5 -17
  73. data/lib/asposecloud.rb +3 -1
  74. data/lib/asposecloud/version.rb +1 -1
  75. data/lib/imaging/converter.rb +55 -0
  76. data/lib/imaging/document.rb +301 -0
  77. data/lib/imaging/extractor.rb +165 -0
  78. data/lib/imaging/image.rb +118 -0
  79. data/lib/restclient.rb +36 -0
  80. data/lib/tasks/assignments.rb +19 -19
  81. data/lib/tasks/calendar.rb +27 -19
  82. data/lib/tasks/converter.rb +4 -17
  83. data/lib/tasks/document.rb +79 -22
  84. data/lib/tasks/resources.rb +18 -18
  85. metadata +70 -19
  86. checksums.yaml +0 -7
  87. data/Tests/barcode_tests.rb +0 -45
  88. data/Tests/cell_tests.rb +0 -41
  89. data/Tests/email_tests.rb +0 -43
  90. data/Tests/pdf_tests.rb +0 -76
  91. data/Tests/slide_tests.rb +0 -41
  92. data/Tests/storage_tests.rb +0 -86
  93. data/Tests/tasks_tests.rb +0 -24
@@ -1,20 +1,3 @@
1
- # Copyright (c) Aspose 2002-2014. All Rights Reserved.
2
- #
3
- # LICENSE: This program is free software; you can redistribute it and/or
4
- # modify it under the terms of the GNU General Public License
5
- # as published by the Free Software Foundation; either version 3
6
- # of the License, or (at your option) any later version.
7
- # This program is distributed in the hope that it will be useful,
8
- # but WITHOUT ANY WARRANTY; without even the implied warranty of
9
- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10
- # GNU General Public License for more details.
11
- # You should have received a copy of the GNU General Public License
12
- # along with this program. If not, see <http://opensource.org/licenses/gpl-3.0.html>;.
13
- #
14
- # @package Aspose_Cloud_SDK_For_Ruby
15
- # @author Assad Mahmood Qazi <assad.mahmood@aspose.com>
16
- # @link https://github.com/asposeforcloud/Aspose_Cloud_SDK_For_Ruby/tree/revamp
17
-
18
1
  module Aspose
19
2
  module Cloud
20
3
  module Words
@@ -26,7 +9,93 @@ module Aspose
26
9
  end
27
10
 
28
11
  =begin
29
- Gets Text items list from document
12
+ Get a List of Sections from a Word Document
13
+ =end
14
+ def get_sections(folder_name = '', storage_type = 'Aspose', storage_name = '')
15
+ str_uri = "#{@base_uri}/sections"
16
+ str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type)
17
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
18
+ JSON.parse(RestClient.get(signed_str_uri, {:accept=>'application/json'}))['Sections']
19
+ end
20
+
21
+ =begin
22
+ Get a specific Section from a Word Document
23
+ @param number section_id ID of the section.
24
+ =end
25
+ def get_section(section_id, folder_name = '', storage_type = 'Aspose', storage_name = '')
26
+ raise 'section_id not specified.' if section_id.nil?
27
+
28
+ str_uri = "#{@base_uri}/sections/#{section_id}"
29
+ str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type)
30
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
31
+ JSON.parse(RestClient.get(signed_str_uri, {:accept=>'application/json'}))['Section']
32
+ end
33
+
34
+ =begin
35
+ Get a List of Paragraphs from a Word Document
36
+ =end
37
+ def get_paragraphs(folder_name = '', storage_type = 'Aspose', storage_name = '')
38
+ str_uri = "#{@base_uri}/paragraphs"
39
+ str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type)
40
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
41
+ JSON.parse(RestClient.get(signed_str_uri, {:accept=>'application/json'}))['Paragraphs']
42
+ end
43
+
44
+ =begin
45
+ Get a Paragraph from a Word Document
46
+ @param number para_id ID of the paragraph.
47
+ =end
48
+ def get_paragraph(para_id, folder_name = '', storage_type = 'Aspose', storage_name = '')
49
+ raise 'para_id not specified.' if para_id.nil?
50
+
51
+ str_uri = "#{@base_uri}/paragraphs/#{para_id}"
52
+ str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type)
53
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
54
+ JSON.parse(RestClient.get(signed_str_uri, {:accept=>'application/json'}))['Paragraph']
55
+ end
56
+
57
+ =begin
58
+ Get a specific Run of a Paragraph from a Word Document
59
+ @param number para_id ID of the paragraph.
60
+ @param number run_index Index of the praragraph run.
61
+ =end
62
+ def get_paragraph_run(para_id, run_index, folder_name = '', storage_type = 'Aspose', storage_name = '')
63
+ raise 'para_id not specified.' if para_id.nil?
64
+ raise 'run_index not specified.' if run_index.nil?
65
+
66
+ str_uri = "#{@base_uri}/paragraphs/#{para_id}/runs/#{run_index}"
67
+ str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type)
68
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
69
+ JSON.parse(RestClient.get(signed_str_uri, {:accept=>'application/json'}))['Run']
70
+ end
71
+
72
+ =begin
73
+ Get Font Information of a Run from a Word Document
74
+ @param number para_id ID of the paragraph.
75
+ @param number run_index Index of the praragraph run.
76
+ =end
77
+ def get_paragraph_run_font(para_id, run_index, folder_name = '', storage_type = 'Aspose', storage_name = '')
78
+ raise 'para_id not specified.' if para_id.nil?
79
+ raise 'run_index not specified.' if run_index.nil?
80
+
81
+ str_uri = "#{@base_uri}/paragraphs/#{para_id}/runs/#{run_index}/font"
82
+ str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type)
83
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
84
+ JSON.parse(RestClient.get(signed_str_uri, {:accept=>'application/json'}))['Font']
85
+ end
86
+
87
+ =begin
88
+ Get All Merge Field Names from a Word Document
89
+ =end
90
+ def get_mail_merge_fields(folder_name = '', storage_type = 'Aspose', storage_name = '')
91
+ str_uri = "#{@base_uri}/mailMergeFieldNames"
92
+ str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type)
93
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
94
+ JSON.parse(RestClient.get(signed_str_uri, {:accept=>'application/json'}))['FieldNames']
95
+ end
96
+
97
+ =begin
98
+ Gets Text items list from document
30
99
  =end
31
100
  def get_text(folder_name = '', storage_type = 'Aspose', storage_name = '')
32
101
  str_uri = "#{@base_uri}/textItems"
@@ -36,9 +105,9 @@ module Aspose
36
105
  end
37
106
 
38
107
  =begin
39
- Get the OLE drawing object from document
40
- @param number index
41
- @param string output_format
108
+ Get the OLE drawing object from document
109
+ @param number index Index of he OLE object.
110
+ @param string ole_format Return file format.
42
111
  =end
43
112
 
44
113
  def get_ole_data(ole_index, ole_format, folder_name = '', storage_type = 'Aspose', storage_name = '')
@@ -56,9 +125,9 @@ module Aspose
56
125
  end
57
126
 
58
127
  =begin
59
- Get the Image drawing object from document
60
- @param number index
61
- @param string render_format
128
+ Get the Image drawing object from document
129
+ @param number image_index Index of the image.
130
+ @param string image_format Return image format.
62
131
  =end
63
132
  def get_image_data(image_index, image_format, folder_name = '', storage_type = 'Aspose', storage_name = '')
64
133
  raise 'image_index not specified.' if image_index.nil?
@@ -75,9 +144,9 @@ module Aspose
75
144
  end
76
145
 
77
146
  =begin
78
- Convert drawing object to image
79
- @param number index
80
- @param string render_format
147
+ Convert drawing object to image
148
+ @param number object_index Index of the object.
149
+ @param string render_format Return file format.
81
150
  =end
82
151
  def convert_drawing_object(object_index, render_format, folder_name = '', storage_type = 'Aspose', storage_name = '')
83
152
  raise 'object_index not specified.' if object_index.nil?
@@ -94,7 +163,7 @@ module Aspose
94
163
  end
95
164
 
96
165
  =begin
97
- Get the List of drawing object from document
166
+ Get the List of drawing object from document
98
167
  =end
99
168
  def get_drawing_object_list(folder_name = '', storage_type = 'Aspose', storage_name = '')
100
169
  str_uri = "#{@base_uri}/drawingObjects"
@@ -104,9 +173,9 @@ module Aspose
104
173
  end
105
174
 
106
175
  =begin
107
- Get the drawing object from document
108
- @param string object_uri
109
- @param string output_path
176
+ Get the drawing object from document
177
+ @param string object_uri URI of the object.
178
+ @param string output_path Path of the output file.
110
179
  =end
111
180
 
112
181
  def get_drawing_object(object_uri, output_path, folder_name = '', storage_type = 'Aspose', storage_name = '')
@@ -137,8 +206,8 @@ module Aspose
137
206
  end
138
207
 
139
208
  =begin
140
- Get the List of drawing object from document
141
- @param string output_path
209
+ Get the List of drawing object from document
210
+ @param string output_path Path of the output file.
142
211
  =end
143
212
  def get_drawing_objects(output_path, folder_name = '', storage_type = 'Aspose', storage_name = '')
144
213
  raise 'output_path not specified.' if output_path.empty?
@@ -147,6 +216,16 @@ module Aspose
147
216
  self.get_drawing_object(obj['link']['Href'],output_path)
148
217
  }
149
218
  end
219
+
220
+ =begin
221
+ Get Word and Paragraph Count from Document
222
+ =end
223
+ def get_stats(folder_name = '', storage_type = 'Aspose', storage_name = '')
224
+ str_uri = "#{@base_uri}/statistics"
225
+ str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type)
226
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
227
+ JSON.parse(RestClient.get(signed_str_uri, {:accept=>'application/json'}))['StatData']
228
+ end
150
229
  end
151
230
  end
152
231
  end
@@ -1,20 +1,3 @@
1
- # Copyright (c) Aspose 2002-2014. All Rights Reserved.
2
- #
3
- # LICENSE: This program is free software; you can redistribute it and/or
4
- # modify it under the terms of the GNU General Public License
5
- # as published by the Free Software Foundation; either version 3
6
- # of the License, or (at your option) any later version.
7
- # This program is distributed in the hope that it will be useful,
8
- # but WITHOUT ANY WARRANTY; without even the implied warranty of
9
- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10
- # GNU General Public License for more details.
11
- # You should have received a copy of the GNU General Public License
12
- # along with this program. If not, see <http://opensource.org/licenses/gpl-3.0.html>;.
13
- #
14
- # @package Aspose_Cloud_SDK_For_Ruby
15
- # @author Assad Mahmood Qazi <assad.mahmood@aspose.com>
16
- # @link https://github.com/asposeforcloud/Aspose_Cloud_SDK_For_Ruby/tree/revamp
17
-
18
1
  module Aspose
19
2
  module Cloud
20
3
  module Words
@@ -43,10 +26,9 @@ module Aspose
43
26
  valid_output.empty? ? Aspose::Cloud::Common::Utils.download_file(JSON.parse(response_stream)['Document']['FileName'],@filename,folder_name,storage_name,storage_type) : valid_output
44
27
  end
45
28
 
46
-
47
29
  =begin
48
- Executes mail merge with template.
49
- @param string str_xml
30
+ Executes mail merge with template.
31
+ @param string str_xml
50
32
  =end
51
33
  def execute_template(str_xml, folder_name = '', storage_type = 'Aspose', storage_name = '')
52
34
  raise 'str_xml not specified.' if str_xml.empty?
@@ -15,20 +15,8 @@
15
15
  # @author Assad Mahmood Qazi <assad.mahmood@aspose.com>
16
16
  # @link https://github.com/asposeforcloud/Aspose_Cloud_SDK_For_Ruby/tree/revamp
17
17
 
18
- require 'test/unit'
19
- require_relative '../lib/asposecloud'
20
-
21
- class WordTests < Test::Unit::TestCase
22
- def test_convert_local_file
23
- Aspose::Cloud::Common::AsposeApp.app_key = '8356c76c7412f32bb85ae7472e842da4'
24
- Aspose::Cloud::Common::AsposeApp.app_sid = '8EB6E644-4A40-4B50-8012-135D1F8F7513'
25
- Aspose::Cloud::Common::AsposeApp.output_location = './Output/'
26
- Aspose::Cloud::Common::Product.set_base_product_uri('http://test.aspose.com/v1.1')
27
-
28
- # Create object of word converter class
29
- converter = Aspose::Cloud::Words::Converter.new('file_on_storage.doc')
30
-
31
- converter.convert_local_file('./Data/test_convertlocal.docx','./Output/converted_file.pdf','pdf')
32
- assert_equal true, File.exist?('./Output/converted_file.pdf')
33
- end
34
- end
18
+ require_relative 'aspose_storage'
19
+ require_relative 'imaging/converter'
20
+ require_relative 'imaging/document'
21
+ require_relative 'imaging/image'
22
+ require_relative 'imaging/extractor'
@@ -26,4 +26,6 @@ require_relative 'aspose_words'
26
26
  require_relative 'aspose_barcode'
27
27
  require_relative 'aspose_ocr'
28
28
  require_relative 'aspose_email'
29
- require_relative 'aspose_tasks';
29
+ require_relative 'aspose_tasks'
30
+ require_relative 'aspose_imaging'
31
+ require_relative 'restclient'
@@ -1,3 +1,3 @@
1
1
  module Asposecloud
2
- VERSION = "1.0.0"
2
+ VERSION = "1.1.2"
3
3
  end
@@ -0,0 +1,55 @@
1
+ module Aspose
2
+ module Cloud
3
+ module Imaging
4
+ class Converter
5
+ def initialize(filename)
6
+ @filename = filename
7
+ raise 'filename not specified.' if filename.empty?
8
+ @base_uri = Aspose::Cloud::Common::Product.product_uri + '/imaging/' + @filename
9
+ end
10
+
11
+ =begin
12
+ convert an image file to a different format
13
+ @param string input_file_path Path of the input file.
14
+ @param string output_filename Name of the output file.
15
+ @param string save_format Output file format.
16
+ =end
17
+ def convert_local_file(input_file_path, output_filename, save_format)
18
+ raise 'input_file_path not specified.' if input_file_path.empty?
19
+ raise 'output_filename not specified.' if output_filename.empty?
20
+ raise 'save_format not specified.' if save_format.empty?
21
+
22
+ str_uri = "#{Aspose::Cloud::Common::Product.product_uri}/imaging/#{@filename}/saveAs?format=#{save_format}"
23
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
24
+ response_stream = RestClient.get(signed_str_uri, {:accept=>'application/json', :payload=>File.new(input_file_path, 'rb')})
25
+
26
+ valid_output = Aspose::Cloud::Common::Utils.validate_output(response_stream)
27
+
28
+ if valid_output.empty?
29
+ save_format = 'zip' if save_format.eql?('html')
30
+ output_path = "#{Aspose::Cloud::Common::AsposeApp.output_location}#{Aspose::Cloud::Common::Utils.get_filename(output_filename)}.#{save_format}"
31
+ Aspose::Cloud::Common::Utils.save_file(response_stream,output_path)
32
+ end
33
+ valid_output
34
+ end
35
+
36
+ =begin
37
+ convert an image file to a fax
38
+ =end
39
+ def convert_tiff_to_fax(folder_name = '', storage_type = 'Aspose', storage_name = '')
40
+ str_uri = "#{Aspose::Cloud::Common::Product.product_uri}/imaging/tiff/#{@filename}/toFax"
41
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
42
+ response_stream = RestClient.get(signed_str_uri, {:accept=>'application/json'})
43
+
44
+ valid_output = Aspose::Cloud::Common::Utils.validate_output(response_stream)
45
+
46
+ if valid_output.empty?
47
+ output_path = "#{Aspose::Cloud::Common::AsposeApp.output_location}#{@filename}"
48
+ Aspose::Cloud::Common::Utils.save_file(response_stream,output_path)
49
+ end
50
+ valid_output
51
+ end
52
+ end
53
+ end
54
+ end
55
+ end
@@ -0,0 +1,301 @@
1
+ module Aspose
2
+ module Cloud
3
+ module Imaging
4
+ class Document
5
+ def initialize(filename)
6
+ @filename = filename
7
+ raise 'filename not specified.' if filename.empty?
8
+ @base_uri = "#{Aspose::Cloud::Common::Product.product_uri}/imaging/#{@filename}"
9
+ end
10
+
11
+ =begin
12
+ Get Document's properties
13
+ =end
14
+ def get_properties(folder_name = '', storage_type = 'Aspose', storage_name = '')
15
+ str_uri = "#{@base_uri}/properties"
16
+ str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type)
17
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
18
+ JSON.parse(RestClient.get(signed_str_uri, {:accept=>'application/json'}))
19
+ end
20
+
21
+ =begin
22
+ Update BMP Image Properties
23
+ @param number bits_per_px Color depth.
24
+ @param number h_resolution New horizontal resolution.
25
+ @param number v_resolution New vertical resolution.
26
+ @param string output_path Path to updated file.
27
+ =end
28
+ def update_bmp_properties(bits_per_px, h_resolution, v_resolution, output_path,
29
+ folder_name = '', storage_type = 'Aspose', storage_name = '')
30
+ str_uri = "#{@base_uri}/bmp"
31
+ str_uri = Aspose::Cloud::Common::Utils.build_uri(str_uri, {:bitsPerPixel=> bits_per_px,
32
+ :horizontalResolution=> h_resolution,
33
+ :verticalResolution=> v_resolution,
34
+ :outPath=> output_path})
35
+ str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri, folder_name, storage_name, storage_type)
36
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
37
+
38
+ response_stream = RestClient.get(signed_str_uri, {:content_type=>'application/json',
39
+ :accept=>'application/json'})
40
+ valid_output = Aspose::Cloud::Common::Utils.validate_output(response_stream)
41
+
42
+ if valid_output.empty?
43
+ output_path = "#{Aspose::Cloud::Common::AsposeApp.output_location}#{Aspose::Cloud::Common::Utils.get_filename(@filename)}_updated.bmp"
44
+ Aspose::Cloud::Common::Utils.save_file(response_stream,output_path)
45
+ end
46
+ valid_output
47
+ end
48
+
49
+ =begin
50
+ Update BMP Image Properties without Storage
51
+ @param number input_file_path Path of the input file.
52
+ @param number bits_per_px Color depth.
53
+ @param number h_resolution New horizontal resolution.
54
+ @param string v_resolution New vertical resolution.
55
+ =end
56
+ def update_bmp_properties_local(input_file_path, bits_per_px, h_resolution, v_resolution,
57
+ folder_name = '', storage_type = 'Aspose', storage_name = '')
58
+ str_uri = "#{Aspose::Cloud::Common::Product.product_uri}/imaging/bmp"
59
+ str_uri = Aspose::Cloud::Common::Utils.build_uri(str_uri, {:bitsPerPixel=> bits_per_px,
60
+ :horizontalResolution=> h_resolution,
61
+ :verticalResolution=> v_resolution})
62
+ str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri, folder_name, storage_name, storage_type)
63
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
64
+
65
+ response_stream = RestClient.post(signed_str_uri, File.new(input_file_path, 'rb'),
66
+ {:content_type=>'application/json', :accept=>'application/json'})
67
+ valid_output = Aspose::Cloud::Common::Utils.validate_output(response_stream)
68
+
69
+ if valid_output.empty?
70
+ output_path = "#{Aspose::Cloud::Common::AsposeApp.output_location}#{Aspose::Cloud::Common::Utils.get_filename(input_file_path)}_updated.bmp"
71
+ Aspose::Cloud::Common::Utils.save_file(response_stream,output_path)
72
+ end
73
+ valid_output
74
+ end
75
+
76
+ =begin
77
+ Update GIF Image Properties
78
+ @param number bg_color_index Index of the background color.
79
+ @param number px_aspect_ratio Pixel aspect ratio.
80
+ @param boolean interlaced Specifies if image is interlaced.
81
+ @param string output_path Path to updated file.
82
+ =end
83
+ def update_gif_properties(bg_color_index, px_aspect_ratio, interlaced, output_path,
84
+ folder_name = '', storage_type = 'Aspose', storage_name = '')
85
+ str_uri = "#{@base_uri}/gif"
86
+ str_uri = Aspose::Cloud::Common::Utils.build_uri(str_uri, {:backgroundColorIndex=> bg_color_index,
87
+ :pixelAspectRatio=> px_aspect_ratio,
88
+ :interlaced=> interlaced,
89
+ :outPath=> output_path})
90
+ str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri, folder_name, storage_name, storage_type)
91
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
92
+
93
+ response_stream = RestClient.get(signed_str_uri, {:content_type=>'application/json',
94
+ :accept=>'application/json'})
95
+ valid_output = Aspose::Cloud::Common::Utils.validate_output(response_stream)
96
+
97
+ if valid_output.empty?
98
+ output_path = "#{Aspose::Cloud::Common::AsposeApp.output_location}#{Aspose::Cloud::Common::Utils.get_filename(@filename)}_updated.gif"
99
+ Aspose::Cloud::Common::Utils.save_file(response_stream,output_path)
100
+ end
101
+ valid_output
102
+ end
103
+
104
+ =begin
105
+ Update GIF Image Properties without Storage
106
+ @param string input_file_path Path of the input file.
107
+ @param number bg_color_index Index of the background color.
108
+ @param number px_aspect_ratio Pixel aspect ratio.
109
+ @param boolean interlaced Specifies if image is interlaced.
110
+ =end
111
+ def update_gif_properties_local(input_file_path, bg_color_index, px_aspect_ratio, interlaced,
112
+ folder_name = '', storage_type = 'Aspose', storage_name = '')
113
+ str_uri = "#{Aspose::Cloud::Common::Product.product_uri}/imaging/gif"
114
+ str_uri = Aspose::Cloud::Common::Utils.build_uri(str_uri, {:backgroundColorIndex=> bg_color_index,
115
+ :pixelAspectRatio=> px_aspect_ratio,
116
+ :interlaced=> interlaced})
117
+ str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri, folder_name, storage_name, storage_type)
118
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
119
+
120
+ response_stream = RestClient.post(signed_str_uri, File.new(input_file_path, 'rb'),
121
+ {:content_type=>'application/json', :accept=>'application/json'})
122
+ valid_output = Aspose::Cloud::Common::Utils.validate_output(response_stream)
123
+
124
+ if valid_output.empty?
125
+ output_path = "#{Aspose::Cloud::Common::AsposeApp.output_location}#{Aspose::Cloud::Common::Utils.get_filename(input_file_path)}_updated.gif"
126
+ Aspose::Cloud::Common::Utils.save_file(response_stream,output_path)
127
+ end
128
+ valid_output
129
+ end
130
+
131
+ =begin
132
+ Update JPG Image Properties
133
+ @param number quality Quality of image. From 0 to 100
134
+ @param string compression_type Compression type.
135
+ @param string output_path Path to updated file.
136
+ =end
137
+ def update_jpg_properties(quality, compression_type, output_path,
138
+ folder_name = '', storage_type = 'Aspose', storage_name = '')
139
+ str_uri = "#{@base_uri}/jpg"
140
+ str_uri = Aspose::Cloud::Common::Utils.build_uri(str_uri, {:quality=> quality,
141
+ :compressionType=> compression_type,
142
+ :outPath=> output_path})
143
+ str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri, folder_name, storage_name, storage_type)
144
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
145
+
146
+ response_stream = RestClient.get(signed_str_uri, {:content_type=>'application/json',
147
+ :accept=>'application/json'})
148
+ valid_output = Aspose::Cloud::Common::Utils.validate_output(response_stream)
149
+
150
+ if valid_output.empty?
151
+ output_path = "#{Aspose::Cloud::Common::AsposeApp.output_location}#{Aspose::Cloud::Common::Utils.get_filename(@filename)}_updated.jpg"
152
+ Aspose::Cloud::Common::Utils.save_file(response_stream,output_path)
153
+ end
154
+ valid_output
155
+ end
156
+
157
+ =begin
158
+ Update JPG Image Properties without Storage
159
+ @param string input_file_path Path of the file.
160
+ @param number quality Quality of image. From 0 to 100
161
+ @param string compression_type Compression type.
162
+ =end
163
+ def update_jpg_properties_local(input_file_path, quality, compression_type,
164
+ folder_name = '', storage_type = 'Aspose', storage_name = '')
165
+ str_uri = "#{Aspose::Cloud::Common::Product.product_uri}/imaging/jpg"
166
+ str_uri = Aspose::Cloud::Common::Utils.build_uri(str_uri, {:quality=> quality,
167
+ :compressionType=> compression_type})
168
+ str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri, folder_name, storage_name, storage_type)
169
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
170
+
171
+ response_stream = RestClient.post(signed_str_uri, File.new(input_file_path, 'rb'),
172
+ {:content_type=>'application/json', :accept=>'application/json'})
173
+ valid_output = Aspose::Cloud::Common::Utils.validate_output(response_stream)
174
+
175
+ if valid_output.empty?
176
+ output_path = "#{Aspose::Cloud::Common::AsposeApp.output_location}#{Aspose::Cloud::Common::Utils.get_filename(input_file_path)}_updated.jpg"
177
+ Aspose::Cloud::Common::Utils.save_file(response_stream,output_path)
178
+ end
179
+ valid_output
180
+ end
181
+
182
+ =begin
183
+ Update TIFF Image Properties
184
+ @param string compression Type of the compression.
185
+ @param string resolution_unit Resolution unit: none, inch, centimeter.
186
+ @param number new_width New image width.
187
+ @param number new_height New image height.
188
+ @param number horizontal_resolution Horizontal resolution.
189
+ @param number vertical_resolution Vertical resolution.
190
+ @param string output_path Path to updated file.
191
+ =end
192
+ def update_tiff_properties(compression, resolution_unit, new_width, new_height, horizontal_resolution, vertical_resolution, output_path,
193
+ folder_name = '', storage_type = 'Aspose', storage_name = '')
194
+ str_uri = "#{@base_uri}/tiff"
195
+ str_uri = Aspose::Cloud::Common::Utils.build_uri(str_uri, {:resolutionUnit=> resolution_unit,
196
+ :compression=> compression,
197
+ :newWidth=> new_width,
198
+ :newHeight=> new_height,
199
+ :horizontalResolution=> horizontal_resolution,
200
+ :verticalResolution=> vertical_resolution,
201
+ :outPath=> output_path})
202
+ str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri, folder_name, storage_name, storage_type)
203
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
204
+
205
+ response_stream = RestClient.post(signed_str_uri, '', {:content_type=>'application/json',
206
+ :accept=>'application/json'})
207
+ valid_output = Aspose::Cloud::Common::Utils.validate_output(response_stream)
208
+
209
+ if valid_output.empty?
210
+ output_path = "#{Aspose::Cloud::Common::AsposeApp.output_location}#{Aspose::Cloud::Common::Utils.get_filename(@filename)}_updated.tiff"
211
+ Aspose::Cloud::Common::Utils.save_file(response_stream,output_path)
212
+ end
213
+ valid_output
214
+ end
215
+
216
+ =begin
217
+ Update TIFF Image Properties without Storage
218
+ @param string input_file_path Path of the input file.
219
+ @param string resolution_unit Resolution unit: none, inch, centimeter.
220
+ @param number new_width New image width.
221
+ @param number new_height New image height.
222
+ @param number horizontal_resolution Horizontal resolution.
223
+ @param number vertical_resolution Vertical resolution.
224
+ =end
225
+ def update_tiff_properties_local(input_file_path, resolution_unit, new_width, new_height, horizontal_resolution, vertical_resolution, output_path,
226
+ folder_name = '', storage_type = 'Aspose', storage_name = '')
227
+ str_uri = "#{Aspose::Cloud::Common::Product.product_uri}/imaging/tiff"
228
+ str_uri = Aspose::Cloud::Common::Utils.build_uri(str_uri, {:resolutionUnit=> resolution_unit,
229
+ :newWidth=> new_width,
230
+ :newHeight=> new_height,
231
+ :horizontalResolution=> horizontal_resolution,
232
+ :verticalResolution=> vertical_resolution,
233
+ :outPath=> output_path})
234
+ str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri, folder_name, storage_name, storage_type)
235
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
236
+
237
+ response_stream = RestClient.post(signed_str_uri, File.new(input_file_path, 'rb'),
238
+ {:content_type=>'application/json', :accept=>'application/json'})
239
+ valid_output = Aspose::Cloud::Common::Utils.validate_output(response_stream)
240
+
241
+ if valid_output.empty?
242
+ output_path = "#{Aspose::Cloud::Common::AsposeApp.output_location}#{Aspose::Cloud::Common::Utils.get_filename(input_file_path)}_updated.tiff"
243
+ Aspose::Cloud::Common::Utils.save_file(response_stream,output_path)
244
+ end
245
+ valid_output
246
+ end
247
+
248
+ =begin
249
+ Update PSD Image Properties
250
+ @param number channels_count Count of channels.
251
+ @param string compression_method Compression method.
252
+ @param string output_path Path to updated file.
253
+ =end
254
+ def update_psd_properties(channels_count, compression_method, output_path,
255
+ folder_name = '', storage_type = 'Aspose', storage_name = '')
256
+ str_uri = "#{@base_uri}/psd"
257
+ str_uri = Aspose::Cloud::Common::Utils.build_uri(str_uri, {:channelsCount=> channels_count,
258
+ :compressionMethod=> compression_method,
259
+ :outPath=> output_path})
260
+ str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri, folder_name, storage_name, storage_type)
261
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
262
+ puts signed_str_uri
263
+ response_stream = RestClient.get(signed_str_uri, {:content_type=>'application/json',
264
+ :accept=>'application/json'})
265
+ valid_output = Aspose::Cloud::Common::Utils.validate_output(response_stream)
266
+
267
+ if valid_output.empty?
268
+ output_path = "#{Aspose::Cloud::Common::AsposeApp.output_location}#{Aspose::Cloud::Common::Utils.get_filename(@filename)}_updated.psd"
269
+ Aspose::Cloud::Common::Utils.save_file(response_stream,output_path)
270
+ end
271
+ valid_output
272
+ end
273
+
274
+ =begin
275
+ Update PSD Image Properties without Storage
276
+ @param string input_file_path Path of the input file.
277
+ @param number channels_count Count of channels.
278
+ @param string compression_method Compression method.
279
+ =end
280
+ def update_psd_properties_local(input_file_path, channels_count, compression_method,
281
+ folder_name = '', storage_type = 'Aspose', storage_name = '')
282
+ str_uri = "#{Aspose::Cloud::Common::Product.product_uri}/imaging/psd"
283
+ str_uri = Aspose::Cloud::Common::Utils.build_uri(str_uri, {:channelsCount=> channels_count,
284
+ :compressionMethod=> compression_method})
285
+ str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri, folder_name, storage_name, storage_type)
286
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
287
+
288
+ response_stream = RestClient.post(signed_str_uri, File.new(input_file_path, 'rb'),
289
+ {:content_type=>'application/json', :accept=>'application/json'})
290
+ valid_output = Aspose::Cloud::Common::Utils.validate_output(response_stream)
291
+
292
+ if valid_output.empty?
293
+ output_path = "#{Aspose::Cloud::Common::AsposeApp.output_location}#{Aspose::Cloud::Common::Utils.get_filename(input_file_path)}_updated.psd"
294
+ Aspose::Cloud::Common::Utils.save_file(response_stream,output_path)
295
+ end
296
+ valid_output
297
+ end
298
+ end
299
+ end
300
+ end
301
+ end