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 Pdf
@@ -1,22 +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
- # To change this template, choose Tools | Templates
19
- # and open the template in the editor.
20
1
  module Aspose
21
2
  module Cloud
22
3
  module Pdf
@@ -81,6 +62,23 @@ module Aspose
81
62
  JSON.parse(RestClient.get(signed_str_uri, {:accept=>'application/json'}))['TextFormat']
82
63
  end
83
64
 
65
+ =begin
66
+ Get Text Format of a Particular Segment
67
+ @param number page_number
68
+ @param number fragment_number
69
+ @param number segment_number
70
+ =end
71
+ def get_segment_text_format(page_number, fragment_number, segment_number, folder_name = '', storage_type = 'Aspose', storage_name = '')
72
+ raise 'page_number not specified.' if page_number.nil?
73
+ raise 'fragment_number not specified.' if fragment_number.nil?
74
+ raise 'segment_number not specified.' if segment_number.nil?
75
+
76
+ str_uri = "#{@base_uri}/pages/#{page_number}/fragments/#{fragment_number}/segments/#{segment_number}/textformat"
77
+ str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type)
78
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
79
+ JSON.parse(RestClient.get(signed_str_uri, {:accept=>'application/json'}))['TextFormat']
80
+ end
81
+
84
82
  =begin
85
83
  Replaces all instances of old text with new text in a PDF file or a particular page
86
84
  @param string old_text
@@ -98,7 +96,24 @@ module Aspose
98
96
  response_stream = RestClient.post(signed_str_uri,json_data,{ :content_type => 'application/json', :accept => 'application/json' })
99
97
  valid_output = Aspose::Cloud::Common::Utils.validate_output(response_stream)
100
98
  valid_output.empty? ? true : valid_output
101
- end
99
+ end
100
+
101
+ =begin
102
+ Replaces multiple instances of old text with new text in a PDF file or a particular page
103
+ @param string str_xml Data in XML format.
104
+ @param number page_number Number of the page.
105
+ =end
106
+ def replace_multiple_text(str_xml, page_number = 0, folder_name = '', storage_type = 'Aspose', storage_name = '')
107
+ raise 'str_xml not specified.' if str_xml.empty?
108
+
109
+ str_uri = page_number > 0 ? "#{@base_uri}/pages/#{page_number}/replaceTextList" : "#{@base_uri}/replaceTextList"
110
+ str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type)
111
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
112
+
113
+ response = Aspose::Cloud::Common::Utils.process_command(signed_str_uri,'POST','XML',str_xml)
114
+ json = JSON.parse(response)
115
+ json['Status'] == 'OK' ? true : false
116
+ end
102
117
 
103
118
  =begin
104
119
  Gets count of the segments in a fragment
@@ -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 Slides
@@ -62,7 +45,7 @@ module Aspose
62
45
 
63
46
  str_uri = "#{@base_uri}/slides/#{slide_number}?format=#{save_format}"
64
47
  str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type)
65
- signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
48
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
66
49
  response_stream = RestClient.get(signed_str_uri, {:accept=>'application/json'})
67
50
 
68
51
  valid_output = Aspose::Cloud::Common::Utils.validate_output(response_stream)
@@ -73,6 +56,53 @@ module Aspose
73
56
  end
74
57
  valid_output
75
58
  end
59
+
60
+ =begin
61
+ convert a document to other formats without using storage
62
+ =end
63
+ def convert_local_file(input_file_path, output_filename, save_format)
64
+ raise 'input_file_path not specified.' if input_file_path.empty?
65
+ raise 'output_filename not specified.' if output_filename.empty?
66
+ raise 'save_format not specified.' if save_format.empty?
67
+
68
+ str_uri = "#{Aspose::Cloud::Common::Product.product_uri}/slides/convert?format=#{save_format}"
69
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
70
+ response_stream = Aspose::Cloud::Common::Utils.upload_file_binary(input_file_path, signed_str_uri)
71
+
72
+ valid_output = Aspose::Cloud::Common::Utils.validate_output(response_stream)
73
+
74
+ if valid_output.empty?
75
+ save_format = 'zip' if save_format.eql?('html')
76
+ output_path = "#{Aspose::Cloud::Common::AsposeApp.output_location}#{Aspose::Cloud::Common::Utils.get_filename(output_filename)}.#{save_format}"
77
+ Aspose::Cloud::Common::Utils.save_file(response_stream,output_path)
78
+ end
79
+ valid_output
80
+ end
81
+
82
+ =begin
83
+ Convert PowerPoint Documents to other File Formats with Additional Settings
84
+ =end
85
+ def convert_with_additional_settings(save_format = 'pdf', text_compression = '', embed_full_fonts = '', compliance ='', jpeg_quality = '', save_metafiles_as_png = '', pdf_password = '', embed_true_type_fonts_for_ascii = '', folder_name = '', storage_type = 'Aspose', storage_name = '')
86
+ str_uri = "#{@base_uri}?format=#{save_format}"
87
+ str_uri += "&TextCompression=#{text_compression}" unless text_compression.empty?
88
+ str_uri += "&EmbedFullFonts=#{embed_full_fonts}" unless embed_full_fonts
89
+ str_uri += "&Compliance=#{compliance}" unless compliance.empty?
90
+ str_uri += "&JpegQuality=#{jpeg_quality}" unless jpeg_quality.nil?
91
+ str_uri += "&SaveMetafilesAsPng=#{save_metafiles_as_png}" unless save_metafiles_as_png
92
+ str_uri += "&PdfPassword=#{pdf_password}" unless pdf_password.empty?
93
+ str_uri += "&EmbedTrueTypeFontsForASCII=#{embed_true_type_fonts_for_ascii}" unless embed_true_type_fonts_for_ascii
94
+ str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type)
95
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
96
+ response_stream = RestClient.get(signed_str_uri, {:accept=>'application/json'})
97
+
98
+ valid_output = Aspose::Cloud::Common::Utils.validate_output(response_stream)
99
+
100
+ if valid_output.empty?
101
+ output_path = "#{Aspose::Cloud::Common::AsposeApp.output_location}#{Aspose::Cloud::Common::Utils.get_filename(@filename)}.#{save_format}"
102
+ Aspose::Cloud::Common::Utils.save_file(response_stream,output_path)
103
+ end
104
+ valid_output
105
+ end
76
106
  end
77
107
  end
78
108
  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 Slides
@@ -24,6 +7,120 @@ module Aspose
24
7
  raise 'filename not specified.' if filename.empty?
25
8
  @base_uri = Aspose::Cloud::Common::Product.product_uri + '/slides/' + @filename
26
9
  end
10
+ =begin
11
+ Add a New Slide in a PowerPoint Presentation
12
+ =end
13
+ def add_slide(position, folder_name = '', storage_type = 'Aspose', storage_name = '')
14
+ raise 'position not specified.' if position.nil?
15
+
16
+ str_uri = "#{@base_uri}/slides?Position=#{position}"
17
+ str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type)
18
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
19
+
20
+ response = RestClient.post(signed_str_uri, '', {:accept=>'application/json'})
21
+ json = JSON.parse(response)
22
+ json['Code'] == 200 ? json['Slides'] : nil
23
+ end
24
+
25
+ =begin
26
+ Create Empty PowerPoint Presentation
27
+ =end
28
+ def create_empty_presentation(folder_name = '', storage_type = 'Aspose', storage_name = '')
29
+ str_uri = "#{@base_uri}"
30
+ str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type)
31
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
32
+
33
+ response = RestClient.put(signed_str_uri, '', {:accept=>'application/json'})
34
+ json = JSON.parse(response)
35
+ json['Code'] == 200 ? json['Document'] : nil
36
+ end
37
+
38
+ =begin
39
+ Copy Slides in a PowerPoint Presentation
40
+ =end
41
+ def clone_slide(slide_number, position, folder_name = '', storage_type = 'Aspose', storage_name = '')
42
+ raise 'slide_number not specified.' if slide_number <= 0
43
+ raise 'position not specified.' if position.nil?
44
+
45
+ str_uri = "#{@base_uri}/slides?SlideToClone=#{slide_number}&Position=#{position}"
46
+ str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type)
47
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
48
+
49
+ response = RestClient.post(signed_str_uri, '', {:accept=>'application/json'})
50
+ json = JSON.parse(response)
51
+ json['Code'] == 200 ? json['Slides'] : nil
52
+ end
53
+
54
+ =begin
55
+ Change Position of Slides in a PowerPoint Presentation
56
+ =end
57
+ def change_slide_position(old_position, new_position, folder_name = '', storage_type = 'Aspose', storage_name = '')
58
+ raise 'old_position not specified.' if old_position.nil?
59
+ raise 'new_position not specified.' if new_position.nil?
60
+
61
+ str_uri = "#{@base_uri}/slides?OldPosition=#{old_position}&NewPosition=#{new_position}"
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 = RestClient.post(signed_str_uri, '', {:accept=>'application/json'})
66
+ json = JSON.parse(response)
67
+ json['Code'] == 200 ? json['Slides'] : nil
68
+ end
69
+
70
+ =begin
71
+ Split PowerPoint Presentations
72
+ =end
73
+ def split_presentation(from = '', to = '', destination = '', format = '', folder_name = '', storage_type = 'Aspose', storage_name = '')
74
+ str_uri = "#{@base_uri}/split?"
75
+ str_uri = "#{str_uri}&from=#{from}" unless from.empty?
76
+ str_uri = "#{str_uri}&to=#{to}" unless to.empty?
77
+ str_uri = "#{str_uri}&destFolder=#{destination}" unless destination.empty?
78
+ str_uri = "#{str_uri}&format=#{format}" unless format.empty?
79
+ str_uri = str_uri[0...-1]
80
+ str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type)
81
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
82
+
83
+ response = RestClient.post(signed_str_uri, '', {:accept=>'application/json'})
84
+ json = JSON.parse(response)
85
+ if json['Code'] == 200
86
+ json['SplitResult']['Slides'].each { |split_page|
87
+ split_filename = File.basename(split_page['Href'])
88
+ Aspose::Cloud::Common::Utils.download_file(split_filename,split_filename,folder_name,storage_name,storage_type)
89
+ }
90
+ end
91
+ end
92
+
93
+ =begin
94
+ Merge PowerPoint Presentations
95
+ @param xml presentation_list
96
+ =end
97
+ def merge_presentations(presentation_list, folder_name = '', storage_type = 'Aspose', storage_name = '')
98
+ raise 'presentation_list not specified.' if presentation_list.empty?
99
+
100
+ str_uri = "#{@base_uri}/merge"
101
+ str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type)
102
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
103
+
104
+ response = RestClient.post(signed_str_uri, presentation_list, {:accept=>'application/json'})
105
+ json = JSON.parse(response)
106
+ json['Code'] == 200 ? json['Document'] : nil
107
+ end
108
+
109
+ =begin
110
+ Merge Selected Slides of PowerPoint Presentations
111
+ @param xml presentation_list
112
+ =end
113
+ def merge_selected_slides(presentation_list, folder_name = '', storage_type = 'Aspose', storage_name = '')
114
+ raise 'presentation_list not specified.' if presentation_list.empty?
115
+
116
+ str_uri = "#{@base_uri}/merge"
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 = RestClient.put(signed_str_uri, presentation_list, {:accept=>'application/json'})
121
+ json = JSON.parse(response)
122
+ json['Code'] == 200 ? json['Document'] : nil
123
+ end
27
124
 
28
125
  =begin
29
126
  Finds the slide count of the specified PowerPoint document
@@ -45,7 +142,10 @@ module Aspose
45
142
  raise 'old_text not specified.' if old_text.empty?
46
143
  raise 'new_text not specified.' if new_text.empty?
47
144
 
48
- str_uri = "#{@base_uri}#{ slide_number > 0 ? '/slides/' + slide_number : '' }/replaceText"
145
+ #str_uri = "#{@base_uri}#{ slide_number > 0 ? '/slides/' + slide_number : '' }/replaceText"
146
+ str_uri = "#{@base_uri}"
147
+ str_uri += "/slides/#{slide_number}" unless slide_number <= 0
148
+ str_uri += "/replaceText"
49
149
  qry = Hash.new
50
150
  qry[:oldValue] = old_text
51
151
  qry[:newValue] = new_text
@@ -63,8 +163,10 @@ module Aspose
63
163
  @param number slide_number
64
164
  @param boolean with_empty
65
165
  =end
66
- def get_all_text_items(slide_number=0, with_empty=false, folder_name = '', storage_type = 'Aspose', storage_name = '')
67
- str_uri = "#{@base_uri}#{ slide_number > 0 ? '/slides/' + slide_number : '' }/textItems?withEmpty=#{with_empty}"
166
+ def get_all_text_items(slide_number=0, with_empty=false, folder_name = '', storage_type = 'Aspose', storage_name = '')
167
+ str_uri = "#{@base_uri}"
168
+ str_uri += "/slides/#{slide_number}" unless slide_number <= 0
169
+ str_uri += "/textItems?withEmpty=#{with_empty}"
68
170
  str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type)
69
171
  signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
70
172
 
@@ -83,28 +185,60 @@ module Aspose
83
185
  valid_output = Aspose::Cloud::Common::Utils.validate_output(response_stream)
84
186
  valid_output.empty? ? Aspose::Cloud::Common::Utils.download_file(@filename,@filename,folder_name,storage_name,storage_type) : valid_output
85
187
  end
86
-
188
+
87
189
  =begin
88
- Get Document's properties
190
+ Delete a Slide from a PowerPoint Presentation
89
191
  =end
90
- def get_properties(folder_name = '', storage_type = 'Aspose', storage_name = '')
91
- str_uri = "#{@base_uri}/documentProperties"
192
+ def delete_slide(slide_number, folder_name = '', storage_type = 'Aspose', storage_name = '')
193
+ raise 'slide_number not specified.' if slide_number <= 0
194
+
195
+ str_uri = "#{@base_uri}/slides/#{slide_number}"
92
196
  str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type)
93
197
  signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
94
- JSON.parse(RestClient.get(signed_str_uri, {:accept=>'application/json'}))['DocumentProperties']['List']
198
+
199
+ response_stream = RestClient.delete(signed_str_uri, {:accept=>'application/json'})
200
+ valid_output = Aspose::Cloud::Common::Utils.validate_output(response_stream)
201
+ valid_output.empty? ? Aspose::Cloud::Common::Utils.download_file(@filename,@filename,folder_name,storage_name,storage_type) : valid_output
95
202
  end
96
203
 
97
204
  =begin
98
- Get Resource Properties information like document source format, IsEncrypted, IsSigned and document properties
99
- @param string property_name
205
+ Delete Background of a PowerPoint Slide
100
206
  =end
101
- def get_property(property_name, folder_name = '', storage_type = 'Aspose', storage_name = '')
102
- raise 'property_name not specified.' if property_name.empty?
207
+ def delete_background(slide_number, folder_name = '', storage_type = 'Aspose', storage_name = '')
208
+ raise 'slide_number not specified.' if slide_number <= 0
103
209
 
104
- str_uri = "#{@base_uri}/documentProperties/#{property_name}"
210
+ str_uri = "#{@base_uri}/slides/#{slide_number}/background"
211
+ str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type)
212
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
213
+
214
+ response_stream = RestClient.delete(signed_str_uri, {:accept=>'application/json'})
215
+ valid_output = Aspose::Cloud::Common::Utils.validate_output(response_stream)
216
+ valid_output.empty? ? Aspose::Cloud::Common::Utils.download_file(@filename,@filename,folder_name,storage_name,storage_type) : valid_output
217
+ end
218
+
219
+ =begin
220
+ Get Background of a PowerPoint Slide
221
+ =end
222
+ def get_background(slide_number, folder_name = '', storage_type = 'Aspose', storage_name = '')
223
+ raise 'slide_number not specified.' if slide_number <= 0
224
+
225
+ str_uri = "#{@base_uri}/slides/#{slide_number}/background"
226
+ str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type)
227
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
228
+
229
+ response = RestClient.get(signed_str_uri, {:accept=>'application/json'})
230
+ json = JSON.parse(response)
231
+ json['Code'] == 200 ? json['Background'] : nil
232
+ end
233
+
234
+ =begin
235
+ Get Document's properties
236
+ =end
237
+ def get_properties(folder_name = '', storage_type = 'Aspose', storage_name = '')
238
+ str_uri = "#{@base_uri}/documentProperties"
105
239
  str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type)
106
240
  signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
107
- JSON.parse(RestClient.get(signed_str_uri, {:accept=>'application/json'}))['DocumentProperty']
241
+ JSON.parse(RestClient.get(signed_str_uri, {:accept=>'application/json'}))['DocumentProperties']['List']
108
242
  end
109
243
 
110
244
  =begin
@@ -147,28 +281,13 @@ module Aspose
147
281
  JSON.parse(RestClient.delete(signed_str_uri, {:accept=>'application/json'}))['Code'] == 200 ? true : false
148
282
  end
149
283
 
150
- =begin
151
- Add custom document properties
152
- @param hash property_list
153
- =end
154
- def add_custom_property(property_list, folder_name = '', storage_type = 'Aspose', storage_name = '')
155
- raise 'property_list not specified.' if property_list.empty?
156
-
157
- json_data = property_list.to_json
158
-
159
- str_uri = "#{@base_uri}/documentProperties"
160
- str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type)
161
- signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
162
- JSON.parse(RestClient.put(signed_str_uri, json_data, {:content_type=>:json, :accept=>'application/json'}))
163
- end
164
-
165
284
  =begin
166
285
  saves the document into various formats
167
286
  @param string outputFilename
168
287
  @param string outputFormat
169
288
  =end
170
289
 
171
- def save_as(output_filename=@filename, output_format='', folder_name = '', storage_type = 'Aspose', storage_name = '')
290
+ def save_as(output_filename, output_format, folder_name = '', storage_type = 'Aspose', storage_name = '')
172
291
  raise 'output_filename not specified.' if output_filename.empty?
173
292
  raise 'output_format not specified.' if output_format.empty?
174
293
 
@@ -184,24 +303,40 @@ module Aspose
184
303
 
185
304
  =begin
186
305
  saves the document into various formats
187
- @param string slide_number
306
+ @param number slide_number
188
307
  @param string outputFilename
189
308
  @param string outputFormat
190
309
  =end
191
- def save_slide_as(slide_number, output_filename=@filename, output_format='', folder_name = '', storage_type = 'Aspose', storage_name = '')
192
- raise 'slide_number not specified.' if slide_number.nil?
310
+ def save_slide_as(slide_number, output_filename, output_format, folder_name = '', storage_type = 'Aspose', storage_name = '')
311
+ raise 'slide_number not specified.' if slide_number <= 0
193
312
  raise 'output_filename not specified.' if output_filename.empty?
194
313
  raise 'output_format not specified.' if output_format.empty?
195
314
 
196
315
  str_uri = "#{@base_uri}/slides/#{slide_number}?format=#{output_format}"
197
316
  str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type)
198
- signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
317
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
199
318
 
200
319
  response_stream = RestClient.get(signed_str_uri, {:accept=>'application/json'})
201
320
  valid_output = Aspose::Cloud::Common::Utils.validate_output(response_stream)
202
321
  output_path = "#{Aspose::Cloud::Common::AsposeApp.output_location}#{Aspose::Cloud::Common::Utils.get_filename(output_filename)}_#{slide_number}.#{output_format}"
203
322
  valid_output.empty? ? Aspose::Cloud::Common::Utils.save_file(response_stream,output_path) : valid_output
204
323
  end
324
+
325
+ =begin
326
+ Get Aspect Ratio of a PowerPoint Slide
327
+ @param number slide_number
328
+ =end
329
+ def aspect_ratio(slide_number, folder_name = '', storage_type = 'Aspose', storage_name = '')
330
+ raise 'slide_number not specified.' if slide_number <= 0
331
+
332
+ str_uri = "#{@base_uri}/slides/#{slide_number}"
333
+ str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type)
334
+ signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri)
335
+
336
+ response = RestClient.get(signed_str_uri, {:accept=>'application/json'})
337
+ json = JSON.parse(response)
338
+ json['Slide']['Width']/json['Slide']['Height']
339
+ end
205
340
  end
206
341
  end
207
342
  end