aspose_slides_cloud 26.6.0 → 26.10.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.
@@ -66,6 +66,7 @@ describe 'UseCases' do
66
66
  folder_name = "TempSlidesSDK"
67
67
  file_name = "test.pptx"
68
68
  font_name = "Calibri"
69
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
69
70
  response = AsposeSlidesCloud::SpecUtils.testSlidesApi.set_embedded_fonts(file_name, nil, [ font_name ], false, "password", folder_name)
70
71
  expect(response.list.length).to eq(4)
71
72
  expect(response.list[2].is_embedded).to eq(true)
@@ -98,7 +99,7 @@ describe 'UseCases' do
98
99
  file_name = "test.pptx"
99
100
  sourceDocument = File.binread("TestData/test.pptx")
100
101
  sourceFont = File.binread("TestData/calibri.ttf")
101
- response = AsposeSlidesCloud::SpecUtils.testSlidesApi.set_embedded_font_from_request_online(sourceDocument, [ sourceFont ], nil, false, "password")
102
+ response = AsposeSlidesCloud::SpecUtils.testSlidesApi.set_embedded_fonts_online(sourceDocument, [ sourceFont ], nil, false, "password")
102
103
  expect(response.size).not_to eq(sourceDocument.size)
103
104
  end
104
105
 
@@ -115,7 +115,7 @@ describe 'UseCases' do
115
115
  presentation_to_merge1.path = folder_name + "/" + file_name
116
116
  presentation_to_merge1.password = password
117
117
  presentation_to_merge2 = AsposeSlidesCloud::PresentationToMerge.new
118
- presentation_to_merge2.slides = [2]
118
+ presentation_to_merge2.slides = [1]
119
119
  presentation_to_merge2.source = "Url"
120
120
  presentation_to_merge2.path = "https://www.dropbox.com/scl/fi/nz3yt2wpg4eugiw12bz3g/info.pptx?rlkey=wju4vbi6h46q8733tzzvfgufz&e=1&st=pqt66x86&dl=1"
121
121
  request.presentations = [presentation_to_merge1, presentation_to_merge2]
@@ -326,5 +326,78 @@ describe 'UseCases' do
326
326
  password, folder_name, "", sub_shape)
327
327
  expect(response.default_tab_size).to eq(72)
328
328
  end
329
+
330
+ it "download paragraph" do
331
+ folder_name = "TempSlidesSDK"
332
+ file_name = "test.pptx"
333
+ password = "password"
334
+ slide_index = 6
335
+ shape_index = 2
336
+ paragraph_index = 1
337
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
338
+ response = AsposeSlidesCloud::SpecUtils.testSlidesApi.download_paragraph(file_name, slide_index, shape_index, paragraph_index,
339
+ 'png', nil, nil, nil, password, folder_name)
340
+ expect(response).not_to be_nil
341
+ expect(response.size).to be > 0
342
+ end
343
+
344
+ it "download subshape paragraph" do
345
+ folder_name = "TempSlidesSDK"
346
+ file_name = "test.pptx"
347
+ password = "password"
348
+ slide_index = 6
349
+ shape_index = 3
350
+ sub_shape = "1"
351
+ paragraph_index = 1
352
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
353
+ response = AsposeSlidesCloud::SpecUtils.testSlidesApi.download_paragraph(file_name, slide_index, shape_index, paragraph_index,
354
+ 'png', nil, nil, nil, password, folder_name, nil, nil, sub_shape)
355
+ expect(response).not_to be_nil
356
+ expect(response.size).to be > 0
357
+ end
358
+
359
+ it "download paragraph scaled" do
360
+ folder_name = "TempSlidesSDK"
361
+ file_name = "test.pptx"
362
+ password = "password"
363
+ slide_index = 6
364
+ shape_index = 2
365
+ paragraph_index = 1
366
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
367
+ response = AsposeSlidesCloud::SpecUtils.testSlidesApi.download_paragraph(file_name, slide_index, shape_index, paragraph_index,
368
+ 'png', nil, nil, nil, password, folder_name)
369
+ scaled_response = AsposeSlidesCloud::SpecUtils.testSlidesApi.download_paragraph(file_name, slide_index, shape_index, paragraph_index,
370
+ 'png', 2, 2, nil, password, folder_name)
371
+ expect(scaled_response.size).to be > response.size
372
+ end
373
+
374
+ it "save paragraph" do
375
+ folder_name = "TempSlidesSDK"
376
+ file_name = "test.pptx"
377
+ password = "password"
378
+ slide_index = 6
379
+ shape_index = 2
380
+ paragraph_index = 1
381
+ out_path = folder_name + "/paragraph.png"
382
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
383
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.save_paragraph(file_name, slide_index, shape_index, paragraph_index,
384
+ 'png', out_path, nil, nil, nil, password, folder_name)
385
+ expect(AsposeSlidesCloud::SpecUtils.testSlidesApi.object_exists(out_path).exists).to be true
386
+ end
387
+
388
+ it "save subshape paragraph" do
389
+ folder_name = "TempSlidesSDK"
390
+ file_name = "test.pptx"
391
+ password = "password"
392
+ slide_index = 6
393
+ shape_index = 3
394
+ sub_shape = "1"
395
+ paragraph_index = 1
396
+ out_path = folder_name + "/paragraph.png"
397
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
398
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.save_paragraph(file_name, slide_index, shape_index, paragraph_index,
399
+ 'png', out_path, nil, nil, nil, password, folder_name, nil, nil, sub_shape)
400
+ expect(AsposeSlidesCloud::SpecUtils.testSlidesApi.object_exists(out_path).exists).to be true
401
+ end
329
402
  end
330
403
  end
@@ -821,7 +821,7 @@ describe 'UseCases' do
821
821
  file_name = "test.pptx"
822
822
  password = "password"
823
823
  AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
824
- result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 3, nil, 1, 1, nil, nil, password, folder_name)
824
+ result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 3, nil, 1, 1, nil, password, folder_name)
825
825
  expect(result).not_to be_nil
826
826
  end
827
827
  end
@@ -295,6 +295,40 @@ describe 'UseCases' do
295
295
  expect(result.paragraph_links.length).to eq(0)
296
296
  end
297
297
 
298
+ it 'download table cell paragraph' do
299
+ folder_name = "TempSlidesSDK"
300
+ file_name = "test.pptx"
301
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
302
+
303
+ slide_index = 9
304
+ shape_index = 1
305
+ row_index = 1
306
+ cell_index = 1
307
+ paragraph_index = 1
308
+
309
+ result = AsposeSlidesCloud::SpecUtils.testSlidesApi.download_table_cell_paragraph(file_name, slide_index, shape_index,
310
+ row_index, cell_index, paragraph_index, 'png', nil, nil, nil, "password", folder_name)
311
+ expect(result).not_to be_nil
312
+ expect(result.size).to be > 0
313
+ end
314
+
315
+ it 'save table cell paragraph' do
316
+ folder_name = "TempSlidesSDK"
317
+ file_name = "test.pptx"
318
+ out_path = folder_name + "/tableCellParagraph.png"
319
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
320
+
321
+ slide_index = 9
322
+ shape_index = 1
323
+ row_index = 1
324
+ cell_index = 1
325
+ paragraph_index = 1
326
+
327
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.save_table_cell_paragraph(file_name, slide_index, shape_index,
328
+ row_index, cell_index, paragraph_index, 'png', out_path, nil, nil, nil, "password", folder_name)
329
+ expect(AsposeSlidesCloud::SpecUtils.testSlidesApi.object_exists(out_path).exists).to be true
330
+ end
331
+
298
332
  it 'get table cell portions' do
299
333
  folder_name = "TempSlidesSDK"
300
334
  file_name = "test.pptx"
data/testRules.json CHANGED
@@ -7,6 +7,7 @@
7
7
  { "Action": "Put", "File": "test-unprotected.pptx", "Method": "UpdateSlide" },
8
8
  { "Action": "Put", "File": "video.pptx", "Method": "/CaptionTrack/" },
9
9
  { "Action": "Put", "File": "macros.pptm", "Method": "/Vba/" },
10
+ { "Action": "Put", "File": "oleObject.xlsx", "Method": "/Import.*Workbook/" },
10
11
  { "Action": "Delete", "File": "test.pptx", "Method": "CreatePresentation" },
11
12
  { "Action": "Delete", "File": "test.pptx", "Method": "UploadFile" },
12
13
  { "Action": "Delete", "Folder": "%v", "File": "test.pptx", "Parameter": "Folder" },
@@ -121,6 +122,7 @@
121
122
  { "Value": "png", "Parameter": "Format", "Method": "/Shape/" },
122
123
  { "Value": "png", "Parameter": "Format", "Method": "/Image/" },
123
124
  { "Value": "png", "Parameter": "Format", "Method": "/NotesSlide/" },
125
+ { "Value": "png", "Parameter": "Format", "Method": "/Paragraph/" },
124
126
  { "InvalidValue": "svg", "Parameter": "Format", "Language": "NET" },
125
127
  { "InvalidValue": "gif", "Parameter": "Format", "Method": "/NotesSlide/", "Language": "NET" },
126
128
  { "InvalidValue": "gif", "Parameter": "Format", "Method": "/Image/", "Language": "NET" },
@@ -154,6 +156,7 @@
154
156
  { "Parameter": "SectionName" },
155
157
  { "Parameter": "PropertyName" },
156
158
  { "Parameter": "FontName" },
159
+ { "Parameter": "FontNames" },
157
160
  { "Parameter": "SourceFont" },
158
161
  { "Parameter": "TargetFont" },
159
162
  { "Parameter": "Path" },
@@ -165,6 +168,7 @@
165
168
  { "Parameter": "DestPath" },
166
169
  { "Parameter": "StorageName", "Method": "StorageExists" },
167
170
  { "Parameter": "StorageName", "Method": "GetDiscUsage" },
171
+ { "Parameter": "VersionId" },
168
172
  { "Parameter": "Html" },
169
173
  { "Parameter": "Text" },
170
174
  { "Parameter": "ShapeAltText" },
@@ -202,6 +206,8 @@
202
206
  { "Parameter": "SplitType" },
203
207
  { "Parameter": "Bounds" },
204
208
  { "Parameter": "Resolution" },
209
+ { "Parameter": "ChartName" },
210
+ { "Parameter": "Document", "Method": "/Import.*FromWorkbook/" },
205
211
  { "Parameter": "Quality" }
206
212
  ],
207
213
  "Results": [
@@ -210,20 +216,22 @@
210
216
  { "Code": 200, "Method": "/CreateComment/" },
211
217
  { "Code": 200, "Method": "/Create.*Watermark/" },
212
218
  { "Code": 200, "Method": "/CreatePresentartionFrom/" },
213
- { "Code": 200, "Method": "/CreateSmartArtNode/" },
214
219
  { "Code": 200, "Method": "CreateFolder" },
215
220
  { "Code": 201, "Method": "/^Copy.*Slide$/" },
221
+ { "Code": 201, "Method": "/Import/" },
222
+ { "Code": 200, "Method": "/ImportFromHtml/" },
223
+ { "Code": 200, "Method": "/ImportFromPdf/" },
216
224
  { "Code": 201, "Method": "/^Start/" },
217
225
  { "Code": 400, "Invalid": true },
218
- { "Code": 404, "Message" : "AmazonS3 Storage exception: The specified key does not exist.", "Parameter": "Name" },
226
+ { "Code": 404, "Message" : "AmazonS3 Storage exception", "Parameter": "Name" },
219
227
  { "Code": 404, "Message" : "Operation does not exist", "Parameter": "Id", "Method": "/^GetOperation/" },
220
228
  { "Code": 404, "Message" : "Property %v does not exist.", "Parameter": "PropertyName" },
221
- { "Code": 404, "Message" : "AmazonS3 Storage exception: The specified key does not exist.", "Parameter": "Folder" },
222
- { "Code": 404, "Message" : "AmazonS3 Storage exception: The specified key does not exist.", "Parameter": "CloneFrom" },
229
+ { "Code": 404, "Message" : "AmazonS3 Storage exception", "Parameter": "Folder" },
230
+ { "Code": 404, "Message" : "AmazonS3 Storage exception", "Parameter": "CloneFrom" },
223
231
  { "Code": 404, "Message": "The storage %v was not found or is not associated with the application.", "Parameter": "/Storage/" },
224
232
  { "Code": 404, "Message": "The storage was not found or is not associated with the application.", "Parameter": "/Storage/", "Method": "/^Start/" },
225
- { "Code": 404, "Message" : "AmazonS3 Storage exception: The specified key does not exist.", "Parameter": "/.*Path/" },
226
- { "Code": 404, "Message" : "AmazonS3 Storage exception: The specified key does not exist.", "Parameter": "Source" },
233
+ { "Code": 404, "Message" : "AmazonS3 Storage exception", "Parameter": "/.*Path/" },
234
+ { "Code": 404, "Message" : "AmazonS3 Storage exception", "Parameter": "Source" },
227
235
  { "Code": 404, "Message": "Author with name %v not found", "Parameter": "Author" },
228
236
  { "Code": 409, "Message": " is not empty", "Parameter": "Recursive" },
229
237
  { "Message": "Invalid sub-node path", "Parameter": "SubNode" },
@@ -234,6 +242,7 @@
234
242
  { "Message": " is out of bounds. Should be ", "Parameter": "Value" },
235
243
  { "Message": "Placeholder with index %v doesn't exist.", "Parameter": "PlaceholderIndex" },
236
244
  { "Message": " is out of bounds. Valid index range is between ", "Type": "int[]" },
245
+ { "Message": " is out of bounds. Valid quality range is between ", "Parameter": "quality" },
237
246
  { "Code": 404, "Message": "is not found", "Parameter": "FontNames" },
238
247
  { "Message": "worksheet in the workbook", "Parameter": "WorksheetName" },
239
248
  { "Message": "cell range", "Parameter": "CellRange" },
@@ -246,7 +255,7 @@
246
255
  { "Message": "Error processing presentation ", "Parameter": "Files" },
247
256
  { "Message": " required parameter", "Type": "model" },
248
257
  { "Message": "Failed to load the presentation", "Parameter": "Request", "Method": "/Merge.*Online/" },
249
- { "Message": "AmazonS3 Storage exception", "Parameter": "VersionId" },
258
+ { "Code": 404, "Message": "AmazonS3 Storage exception", "Parameter": "VersionId" },
250
259
  { "Message": "AmazonS3 Storage exception", "Parameter": "SrcPath", "Method": "CopyFile" },
251
260
  { "Message": "Error parsing XML template data", "Parameter": "Data" },
252
261
  { "Message": "Color must be in format #FF000000", "Parameter": "Color" }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aspose_slides_cloud
3
3
  version: !ruby/object:Gem::Version
4
- version: 26.6.0
4
+ version: 26.10.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Victor Putrov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-06-15 00:00:00.000000000 Z
11
+ date: 2026-11-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday