Aspose.Slides.SaaSIntegrations
25.9.0
Prefix Reserved
dotnet add package Aspose.Slides.SaaSIntegrations --version 25.9.0
NuGet\Install-Package Aspose.Slides.SaaSIntegrations -Version 25.9.0
<PackageReference Include="Aspose.Slides.SaaSIntegrations" Version="25.9.0" />
<PackageVersion Include="Aspose.Slides.SaaSIntegrations" Version="25.9.0" />
<PackageReference Include="Aspose.Slides.SaaSIntegrations" />
paket add Aspose.Slides.SaaSIntegrations --version 25.9.0
#r "nuget: Aspose.Slides.SaaSIntegrations, 25.9.0"
#:package Aspose.Slides.SaaSIntegrations@25.9.0
#addin nuget:?package=Aspose.Slides.SaaSIntegrations&version=25.9.0
#tool nuget:?package=Aspose.Slides.SaaSIntegrations&version=25.9.0
Integrating Aspose.Slides with popular presentation SaaS services
Aspose.Slides team is excited to introduce our integrations with popular presentation SaaS services such as Google Slides
, Google Drive
, Canva
, and Zoho
. With Aspose.Slides SaaS Integrations, you can convert, edit, download, and upload presentations programmatically from the services mentioned above.
For more examples, visit our GitHub repository: Aspose.Slides SaaS Integrations Examples.
Google API
Before starting to work with your Google Slides presentation via Aspose.Slides you have to create a Google API project and create a Google Cloud project, then enable the desired APIs. Then you have to choose a way you are going to access Google API.
Aspose.Slide Google Slides SaaS Integration supports two ways to access Google API: Google Service Account
or OAuth 2.0
with user interaction via a browser.
Google Integration Example
In the following example, we will download a Google Slides presentation from Google Drive and save it to the local disk as a PDF file. We will use a Google Service Account for authorization, assuming the service account JSON file with credentials has already been downloaded.
// Create externally managed HttpClient
HttpClient httpClient = new HttpClient();
// Create an authorization provider using a service account JSON file
IGoogleAuthorizationProvider account = new GoogleServiceAccountAuthProvider(@"service_account_json_file.json", httpClient);
// Initialize Google Slides integration service with the authorization provider
GoogleSlidesIntegration googleSlidesIntegration = new GoogleSlidesIntegration(account, httpClient);
// Load a presentation from Google Drive by its file ID into an Aspose.Slides IPresentation instance
using IPresentation pres = await googleSlidesIntegration.LoadPresentationAsync("1A2B3C4D5E6F7G8H9I0J");
// Modify the presentation if needed (e.g., remove the second slide)
pres.Slides.RemoveAt(1);
// Save the presentation locally as a PDF file
pres.Save(@"GoogleDriveDownload.pdf", SaveFormat.Pdf);
Canva API
Before working with Canva presentations using Aspose.Slides, you must first create a Canva integration, enable the required APIs, and configure the redirection URI. In general, working with Canva via our library is similar to working with Google Slides. However, instead of the Google Slides-specific classes, use the CanvaIntegration class along with the dedicated ICanvaAuthorizationProvider. Canva supports OAuth 2.0 authorization only.
Canva Integration example
This example demonstrates how to load a presentation instance from Canva using access via CanvaOAuthProvider. On the first run, this code will require interaction with a browser (consent mode). All subsequent executions will not require browser interaction, as the refresh token is stored locally after the initial run.
// Create externally managed HttpClient
using HttpClient httpClient = new HttpClient();
// Create an authorization provider using OAuth with client ID, client secret and redirect URI
CanvaOAuthProvider authorizationProvider = new CanvaOAuthProvider("your_cliend_id", "your_client_secret", "your_redirect_uri", httpClient);
// Initialize the Canva integration service with the authorization provider
CanvaIntegration canvaIntegration = new CanvaIntegration(authorizationProvider, httpClient);
//Load presentation
using IPresentation presentation = await canvaIntegration.LoadPresentationAsync("your_canva_design_id");
// Save the presentation locally as a PowerPoint presentation file
presentation.Save("MyPresentation.pptx", Export.SaveFormat.Pptx);
Zoho API
You can use the ZohoIntegration class to integrate Aspose.Slides with Zoho. The ZohoIntegration class interacts with the Zoho WorkDrive REST API to list, upload, and download presentations.
To work with the Zoho WorkDrive API, you must first register on the Zoho API Console and create an application. Make sure you know the data center where your files are hosted (e.g., USA, EU, Canada).
The Zoho WorkDrive API uses OAuth 2.0 for authorization. To authenticate your requests, use one of the available IZohoAuthorizationProvider implementations.
// Create externally managed HttpClient
using HttpClient httpClient = new HttpClient();
// Create an authorization provider using OAuth with client ID, client secret, and redirect URI for the EU data center
IZohoAuthorizationProvider auth = new ZohoServerAppOAuthProvider(
"my_client_id",
"my_client_secret",
ZohoAccountDataCenterType.EU,
"https://myzohoapp.com/oauth/redirect",
httpClient);
// Initialize Zoho integration with the authorization provider
ZohoIntegration zoho = new ZohoIntegration(auth, ZohoApiDataCenterType.EU, httpClient);
// Load a presentation from Zoho WorkDrive
using IPresentation pres = await zoho.LoadPresentationAsync("1A2B3C4D5E6F7G8H9I0J");
// Save the presentation locally as a PDF file
pres.Save("ZohoDownload.pdf", SaveFormat.Pdf);
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net6.0
- Aspose.Slides.NET (>= 25.6.0)
- System.IdentityModel.Tokens.Jwt (>= 8.12.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Added Zoho Integration