aspose_slides_cloud 24.12.0 → 25.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.
- checksums.yaml +4 -4
 - data/Gemfile.lock +21 -19
 - data/README.md +15 -71
 - data/TestData/video.pptx +0 -0
 - data/lib/aspose_slides_cloud/api/slides_api.rb +448 -195
 - data/lib/aspose_slides_cloud/api/slides_async_api.rb +12 -12
 - data/lib/aspose_slides_cloud/models/audio_frame.rb +51 -1
 - data/lib/aspose_slides_cloud/models/caption_track.rb +116 -0
 - data/lib/aspose_slides_cloud/models/caption_tracks.rb +93 -0
 - data/lib/aspose_slides_cloud/models/export_format.rb +1 -0
 - data/lib/aspose_slides_cloud/models/export_options.rb +11 -1
 - data/lib/aspose_slides_cloud/models/gif_export_options.rb +2 -1
 - data/lib/aspose_slides_cloud/models/html5_export_options.rb +19 -8
 - data/lib/aspose_slides_cloud/models/html_export_options.rb +13 -2
 - data/lib/aspose_slides_cloud/models/image_export_options.rb +2 -1
 - data/lib/aspose_slides_cloud/models/image_export_options_base.rb +2 -1
 - data/lib/aspose_slides_cloud/models/markdown_export_options.rb +45 -2
 - data/lib/aspose_slides_cloud/models/pdf_export_options.rb +2 -1
 - data/lib/aspose_slides_cloud/models/picture_fill.rb +21 -1
 - data/lib/aspose_slides_cloud/models/pptx_export_options.rb +13 -2
 - data/lib/aspose_slides_cloud/models/save.rb +2 -2
 - data/lib/aspose_slides_cloud/models/save_shape.rb +2 -2
 - data/lib/aspose_slides_cloud/models/save_slide.rb +2 -2
 - data/lib/aspose_slides_cloud/models/shape_export_format.rb +1 -0
 - data/lib/aspose_slides_cloud/models/slide_export_format.rb +1 -0
 - data/lib/aspose_slides_cloud/models/svg_export_options.rb +13 -2
 - data/lib/aspose_slides_cloud/models/swf_export_options.rb +9 -72
 - data/lib/aspose_slides_cloud/models/tiff_export_options.rb +2 -1
 - data/lib/aspose_slides_cloud/models/video_export_options.rb +2 -1
 - data/lib/aspose_slides_cloud/models/xaml_export_options.rb +2 -1
 - data/lib/aspose_slides_cloud/models/xps_export_options.rb +2 -1
 - data/lib/aspose_slides_cloud/type_registry.rb +4 -0
 - data/lib/aspose_slides_cloud/version.rb +1 -1
 - data/lib/aspose_slides_cloud.rb +2 -0
 - data/spec/api/slides_api_spec.rb +1424 -439
 - data/spec/use_cases/font_spec.rb +22 -4
 - data/spec/use_cases/image_spec.rb +5 -1
 - data/spec/use_cases/merge_spec.rb +1 -1
 - data/testRules.json +12 -1
 - metadata +5 -2
 
    
        data/spec/use_cases/font_spec.rb
    CHANGED
    
    | 
         @@ -62,25 +62,43 @@ describe 'UseCases' do 
     | 
|
| 
       62 
62 
     | 
    
         
             
                        expect(response.size).not_to eq(source.size)
         
     | 
| 
       63 
63 
     | 
    
         
             
                    end
         
     | 
| 
       64 
64 
     | 
    
         | 
| 
       65 
     | 
    
         
            -
                    it "set embedded  
     | 
| 
      
 65 
     | 
    
         
            +
                    it "set embedded fonts" do
         
     | 
| 
      
 66 
     | 
    
         
            +
                        folder_name = "TempSlidesSDK"
         
     | 
| 
      
 67 
     | 
    
         
            +
                        file_name = "test.pptx"
         
     | 
| 
      
 68 
     | 
    
         
            +
                        font_name = "Calibri"
         
     | 
| 
      
 69 
     | 
    
         
            +
                        response = AsposeSlidesCloud::SpecUtils.testSlidesApi.set_embedded_fonts(file_name, nil, [ font_name ], false, "password", folder_name)
         
     | 
| 
      
 70 
     | 
    
         
            +
                        expect(response.list.length).to eq(4)
         
     | 
| 
      
 71 
     | 
    
         
            +
                        expect(response.list[2].is_embedded).to eq(true)
         
     | 
| 
      
 72 
     | 
    
         
            +
                        expect(response.list[2].font_name).to eq(font_name)
         
     | 
| 
      
 73 
     | 
    
         
            +
                    end
         
     | 
| 
      
 74 
     | 
    
         
            +
             
     | 
| 
      
 75 
     | 
    
         
            +
                    it "set embedded fonts from request" do
         
     | 
| 
       66 
76 
     | 
    
         
             
                        folder_name = "TempSlidesSDK"
         
     | 
| 
       67 
77 
     | 
    
         
             
                        file_name = "test.pptx"
         
     | 
| 
       68 
78 
     | 
    
         
             
                        font_name = "Calibri"
         
     | 
| 
       69 
79 
     | 
    
         
             
                        source = File.binread("TestData/calibri.ttf")
         
     | 
| 
       70 
80 
     | 
    
         
             
                        AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
         
     | 
| 
       71 
     | 
    
         
            -
                        response = AsposeSlidesCloud::SpecUtils.testSlidesApi. 
     | 
| 
      
 81 
     | 
    
         
            +
                        response = AsposeSlidesCloud::SpecUtils.testSlidesApi.set_embedded_fonts(file_name, [ source ], nil, false, "password", folder_name)
         
     | 
| 
       72 
82 
     | 
    
         
             
                        expect(response.list.length).to eq(4)
         
     | 
| 
       73 
83 
     | 
    
         
             
                        expect(response.list[2].is_embedded).to eq(true)
         
     | 
| 
       74 
84 
     | 
    
         
             
                        expect(response.list[2].font_name).to eq(font_name)
         
     | 
| 
       75 
85 
     | 
    
         
             
                    end
         
     | 
| 
       76 
86 
     | 
    
         | 
| 
      
 87 
     | 
    
         
            +
                    it "set embedded fonts online" do
         
     | 
| 
      
 88 
     | 
    
         
            +
                        folder_name = "TempSlidesSDK"
         
     | 
| 
      
 89 
     | 
    
         
            +
                        file_name = "test.pptx"
         
     | 
| 
      
 90 
     | 
    
         
            +
                        sourceDocument = File.binread("TestData/test.pptx")
         
     | 
| 
      
 91 
     | 
    
         
            +
                        font_name = "Calibri"
         
     | 
| 
      
 92 
     | 
    
         
            +
                        response = AsposeSlidesCloud::SpecUtils.testSlidesApi.set_embedded_fonts_online(sourceDocument, nil, [ font_name ], false, "password")
         
     | 
| 
      
 93 
     | 
    
         
            +
                        expect(response.size).not_to eq(sourceDocument.size)
         
     | 
| 
      
 94 
     | 
    
         
            +
                    end
         
     | 
| 
      
 95 
     | 
    
         
            +
             
     | 
| 
       77 
96 
     | 
    
         
             
                    it "set embedded font from request online" do
         
     | 
| 
       78 
97 
     | 
    
         
             
                        folder_name = "TempSlidesSDK"
         
     | 
| 
       79 
98 
     | 
    
         
             
                        file_name = "test.pptx"
         
     | 
| 
       80 
99 
     | 
    
         
             
                        sourceDocument = File.binread("TestData/test.pptx")
         
     | 
| 
       81 
100 
     | 
    
         
             
                        sourceFont = File.binread("TestData/calibri.ttf")
         
     | 
| 
       82 
     | 
    
         
            -
                        response = AsposeSlidesCloud::SpecUtils.testSlidesApi.set_embedded_font_from_request_online(sourceDocument, sourceFont, 
         
     | 
| 
       83 
     | 
    
         
            -
                            false, "password")
         
     | 
| 
      
 101 
     | 
    
         
            +
                        response = AsposeSlidesCloud::SpecUtils.testSlidesApi.set_embedded_font_from_request_online(sourceDocument, [ sourceFont ], nil, false, "password")
         
     | 
| 
       84 
102 
     | 
    
         
             
                        expect(response.size).not_to eq(sourceDocument.size)
         
     | 
| 
       85 
103 
     | 
    
         
             
                    end
         
     | 
| 
       86 
104 
     | 
    
         | 
| 
         @@ -31,8 +31,12 @@ describe 'UseCases' do 
     | 
|
| 
       31 
31 
     | 
    
         
             
                  password = "password"
         
     | 
| 
       32 
32 
     | 
    
         
             
                  AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
         
     | 
| 
       33 
33 
     | 
    
         
             
                  presentation_result = AsposeSlidesCloud::SpecUtils.testSlidesApi.get_presentation_images(file_name, password, folder_name)
         
     | 
| 
       34 
     | 
    
         
            -
                  slide_result = AsposeSlidesCloud::SpecUtils.testSlidesApi.get_slide_images(file_name, 1, password, folder_name)
         
     | 
| 
      
 34 
     | 
    
         
            +
                  slide_result = AsposeSlidesCloud::SpecUtils.testSlidesApi.get_slide_images(file_name, 1, nil, nil, password, folder_name)
         
     | 
| 
       35 
35 
     | 
    
         
             
                  expect(slide_result.list.length).to be < presentation_result.list.length
         
     | 
| 
      
 36 
     | 
    
         
            +
                  shape_result = AsposeSlidesCloud::SpecUtils.testSlidesApi.get_slide_images(file_name, 2, 2, nil, password, folder_name)
         
     | 
| 
      
 37 
     | 
    
         
            +
                  expect(shape_result.list.length).to eq(1)
         
     | 
| 
      
 38 
     | 
    
         
            +
                  alt_result = AsposeSlidesCloud::SpecUtils.testSlidesApi.get_slide_images(file_name, 2, nil, "title", password, folder_name)
         
     | 
| 
      
 39 
     | 
    
         
            +
                  expect(alt_result.list.length).to eq(0)
         
     | 
| 
       36 
40 
     | 
    
         
             
                end
         
     | 
| 
       37 
41 
     | 
    
         | 
| 
       38 
42 
     | 
    
         
             
                it 'download all storage' do
         
     | 
| 
         @@ -117,7 +117,7 @@ describe 'UseCases' do 
     | 
|
| 
       117 
117 
     | 
    
         
             
                  presentation_to_merge2 = AsposeSlidesCloud::PresentationToMerge.new
         
     | 
| 
       118 
118 
     | 
    
         
             
                  presentation_to_merge2.slides = [2]
         
     | 
| 
       119 
119 
     | 
    
         
             
                  presentation_to_merge2.source = "Url"
         
     | 
| 
       120 
     | 
    
         
            -
                  presentation_to_merge2.path = "https:// 
     | 
| 
      
 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]
         
     | 
| 
       122 
122 
     | 
    
         
             
                  response = AsposeSlidesCloud::SpecUtils.testSlidesApi.merge_online(nil, request)
         
     | 
| 
       123 
123 
     | 
    
         
             
                  expect(response.size).not_to eq(0)
         
     | 
    
        data/testRules.json
    CHANGED
    
    | 
         @@ -5,6 +5,7 @@ 
     | 
|
| 
       5 
5 
     | 
    
         
             
            		{ "Action": "Put", "File": "test-unprotected.pptx", "Method": "CreateSlide" },
         
     | 
| 
       6 
6 
     | 
    
         
             
            		{ "Action": "Put", "File": "test-unprotected.pptx", "Method": "DeleteSlides" },
         
     | 
| 
       7 
7 
     | 
    
         
             
            		{ "Action": "Put", "File": "test-unprotected.pptx", "Method": "UpdateSlide" },
         
     | 
| 
      
 8 
     | 
    
         
            +
            		{ "Action": "Put", "File": "video.pptx", "Method": "/CaptionTrack/" },
         
     | 
| 
       8 
9 
     | 
    
         
             
            		{ "Action": "Put", "File": "macros.pptm", "Method": "/Vba/" },
         
     | 
| 
       9 
10 
     | 
    
         
             
            		{ "Action": "Delete", "File": "test.pptx", "Method": "CreatePresentation" },
         
     | 
| 
       10 
11 
     | 
    
         
             
            		{ "Action": "Delete", "File": "test.pptx", "Method": "UploadFile" },
         
     | 
| 
         @@ -80,9 +81,12 @@ 
     | 
|
| 
       80 
81 
     | 
    
         
             
            		{ "Value": "@shapes.svg", "Type": "stream", "Parameter": "Image", "Method": "ImportShapesFromSvg" },
         
     | 
| 
       81 
82 
     | 
    
         
             
            		{ "Value": "@calibri.ttf", "Type": "stream", "Parameter": "Font" },
         
     | 
| 
       82 
83 
     | 
    
         
             
            		{ "Value": "@(test.pptx,test-unprotected.pptx)", "InvalidValue": null, "Type": "stream[]" },
         
     | 
| 
      
 84 
     | 
    
         
            +
            		{ "Value": "@(calibri.ttf)", "Type": "stream[]", "Parameter": "Fonts" },
         
     | 
| 
       83 
85 
     | 
    
         
             
            		{ "Value": "test.pptx", "InvalidValue": "invalid%v", "Parameter": "Name" },
         
     | 
| 
       84 
86 
     | 
    
         
             
            		{ "Value": "changedtest.pptx", "Parameter": "Name", "Method": "/CreatePresentationFrom/" },
         
     | 
| 
      
 87 
     | 
    
         
            +
            		{ "Value": "video.pptx", "Parameter": "Name", "Method": "/CaptionTrack/" },
         
     | 
| 
       85 
88 
     | 
    
         
             
            		{ "Value": "macros.pptm", "Parameter": "Name", "Method": "/Vba/" },
         
     | 
| 
      
 89 
     | 
    
         
            +
            		{ "Value": "Arial", "Parameter": "FontNames", "Type": "string[]" },
         
     | 
| 
       86 
90 
     | 
    
         
             
            		{ "Value": "testProperty", "Parameter": "PropertyName" },
         
     | 
| 
       87 
91 
     | 
    
         
             
            		{ "Value": "TempSlidesSDK", "Parameter": "Folder" },
         
     | 
| 
       88 
92 
     | 
    
         
             
            		{ "Value": "password", "Parameter": "/Password/" },
         
     | 
| 
         @@ -103,6 +107,7 @@ 
     | 
|
| 
       103 
107 
     | 
    
         
             
            			"Parameter": "Data",
         
     | 
| 
       104 
108 
     | 
    
         
             
                                    "Method": "CreatePresentationFromTemplate"
         
     | 
| 
       105 
109 
     | 
    
         
             
            		},
         
     | 
| 
      
 110 
     | 
    
         
            +
            		{ "Value": "WEBVTT\n\n00:00:00.000-- > 00:00:10.000\nCaption 1 text.", "Parameter": "Data", "Method": "CreateCaptionTrack" },
         
     | 
| 
       106 
111 
     | 
    
         
             
            		{ "Value": "Arial", "Parameter": "FontName" },
         
     | 
| 
       107 
112 
     | 
    
         
             
            		{ "Value": "Calibri", "Parameter": "FontName", "Method": "/SetEmbeddedFont/" },
         
     | 
| 
       108 
113 
     | 
    
         
             
            		{ "Value": "Calibri Light", "Parameter": "FontName", "Method": "/DeleteEmbeddedFont/" },
         
     | 
| 
         @@ -158,6 +163,7 @@ 
     | 
|
| 
       158 
163 
     | 
    
         
             
            		{ "Parameter": "StorageName", "Method": "GetDiscUsage" },
         
     | 
| 
       159 
164 
     | 
    
         
             
            		{ "Parameter": "Html" },
         
     | 
| 
       160 
165 
     | 
    
         
             
            		{ "Parameter": "Text" },
         
     | 
| 
      
 166 
     | 
    
         
            +
            		{ "Parameter": "ShapeAltText" },
         
     | 
| 
       161 
167 
     | 
    
         
             
            		{ "Parameter": "Regex" },
         
     | 
| 
       162 
168 
     | 
    
         
             
            		{ "Parameter": "Pattern" },
         
     | 
| 
       163 
169 
     | 
    
         
             
            		{ "Parameter": "Name", "Method": "/CreatePresentation/" },
         
     | 
| 
         @@ -176,7 +182,10 @@ 
     | 
|
| 
       176 
182 
     | 
    
         
             
            		{ "Parameter": "LayoutAlias" },
         
     | 
| 
       177 
183 
     | 
    
         
             
            		{ "Parameter": "ShapeName" },
         
     | 
| 
       178 
184 
     | 
    
         
             
            		{ "Parameter": "Files" },
         
     | 
| 
      
 185 
     | 
    
         
            +
            		{ "Parameter": "Fonts" },
         
     | 
| 
       179 
186 
     | 
    
         
             
            		{ "Parameter": "Data", "Method": "CreatePresentation" },
         
     | 
| 
      
 187 
     | 
    
         
            +
            		{ "Parameter": "Data", "Method": "CreateCaptionTrack" },
         
     | 
| 
      
 188 
     | 
    
         
            +
            		{ "Parameter": "Label", "Method": "CreateCaptionTrack" },
         
     | 
| 
       180 
189 
     | 
    
         
             
            		{ "Parameter": "Format", "Language": "NET" },
         
     | 
| 
       181 
190 
     | 
    
         
             
            		{ "Parameter": "Format", "Language": "Java" },
         
     | 
| 
       182 
191 
     | 
    
         
             
            		{ "Parameter": "Format", "Language": "Swift" },
         
     | 
| 
         @@ -188,7 +197,8 @@ 
     | 
|
| 
       188 
197 
     | 
    
         
             
            		{ "Parameter": "ChartWallType" },
         
     | 
| 
       189 
198 
     | 
    
         
             
            		{ "Parameter": "SplitType" },
         
     | 
| 
       190 
199 
     | 
    
         
             
            		{ "Parameter": "Bounds" },
         
     | 
| 
       191 
     | 
    
         
            -
            		{ "Parameter": "Resolution" }
         
     | 
| 
      
 200 
     | 
    
         
            +
            		{ "Parameter": "Resolution" },
         
     | 
| 
      
 201 
     | 
    
         
            +
            		{ "Parameter": "Quality" }
         
     | 
| 
       192 
202 
     | 
    
         
             
            	],
         
     | 
| 
       193 
203 
     | 
    
         
             
            	"Results": [
         
     | 
| 
       194 
204 
     | 
    
         
             
            		{ "Code": 200 },
         
     | 
| 
         @@ -220,6 +230,7 @@ 
     | 
|
| 
       220 
230 
     | 
    
         
             
            		{ "Message": " is out of bounds. Should be ", "Parameter": "Value" },
         
     | 
| 
       221 
231 
     | 
    
         
             
            		{ "Message": "Placeholder with index %v doesn't exist.", "Parameter": "PlaceholderIndex" },
         
     | 
| 
       222 
232 
     | 
    
         
             
            		{ "Message": " is out of bounds. Valid index range is between ", "Type": "int[]" },
         
     | 
| 
      
 233 
     | 
    
         
            +
            		{ "Code": 404, "Message": "is not found", "Parameter": "FontNames" },
         
     | 
| 
       223 
234 
     | 
    
         
             
            		{ "Message": "Invalid value for ", "Parameter": "SlideType" },
         
     | 
| 
       224 
235 
     | 
    
         
             
            		{ "Message": "Invalid value for ", "Parameter": "Format" },
         
     | 
| 
       225 
236 
     | 
    
         
             
            		{ "Message": " required parameter", "Type": "stream" },
         
     | 
    
        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:  
     | 
| 
      
 4 
     | 
    
         
            +
              version: 25.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:  
     | 
| 
      
 11 
     | 
    
         
            +
            date: 2025-10-27 00:00:00.000000000 Z
         
     | 
| 
       12 
12 
     | 
    
         
             
            dependencies:
         
     | 
| 
       13 
13 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       14 
14 
     | 
    
         
             
              name: faraday
         
     | 
| 
         @@ -293,6 +293,7 @@ files: 
     | 
|
| 
       293 
293 
     | 
    
         
             
            - TestData/test-unprotected.pptx
         
     | 
| 
       294 
294 
     | 
    
         
             
            - TestData/test.pdf
         
     | 
| 
       295 
295 
     | 
    
         
             
            - TestData/test.pptx
         
     | 
| 
      
 296 
     | 
    
         
            +
            - TestData/video.pptx
         
     | 
| 
       296 
297 
     | 
    
         
             
            - TestData/watermark.png
         
     | 
| 
       297 
298 
     | 
    
         
             
            - aspose_slides_cloud.gemspec
         
     | 
| 
       298 
299 
     | 
    
         
             
            - docker-entrypoint.sh
         
     | 
| 
         @@ -335,6 +336,8 @@ files: 
     | 
|
| 
       335 
336 
     | 
    
         
             
            - lib/aspose_slides_cloud/models/bubble_chart_data_point.rb
         
     | 
| 
       336 
337 
     | 
    
         
             
            - lib/aspose_slides_cloud/models/bubble_series.rb
         
     | 
| 
       337 
338 
     | 
    
         
             
            - lib/aspose_slides_cloud/models/camera.rb
         
     | 
| 
      
 339 
     | 
    
         
            +
            - lib/aspose_slides_cloud/models/caption_track.rb
         
     | 
| 
      
 340 
     | 
    
         
            +
            - lib/aspose_slides_cloud/models/caption_tracks.rb
         
     | 
| 
       338 
341 
     | 
    
         
             
            - lib/aspose_slides_cloud/models/chart.rb
         
     | 
| 
       339 
342 
     | 
    
         
             
            - lib/aspose_slides_cloud/models/chart_category.rb
         
     | 
| 
       340 
343 
     | 
    
         
             
            - lib/aspose_slides_cloud/models/chart_lines_format.rb
         
     |