В этой статье мы подробно обсудим, как объединить несколько PowerPoints в один файл презентации. PowerPoints используются для информационных представлений и брифингов в корпоративной культуре, а также они используются деловыми людьми и студентами для подготовки слайд-шоу. Еще одним аспектом популярности является создание учебных пособий, цифровых портфолио, базовых анимаций или создание слайд-шоу фотографий. Однако, когда команды работают в распределенной среде, у нас может возникнуть потребность в объединении презентаций PowerPoint. Таким образом, эта статья проливает свет на детали объединения нескольких презентаций PowerPoint в одну презентацию с использованием Java Cloud SDK.
Объединить API PowerPoint
Для программного создания, редактирования и экспорта PPT или PPTX в PDF, JPEG, PNG или GIF etc, мы разработали API с низким кодом под названием Aspose.Slides Cloud. Его архитектура на основе REST позволяет вам вызывать подпрограммы API на любых платформах. Теперь, чтобы реализовать функцию объединения презентаций PowerPoint в приложение Java, мы специально создали Aspose.Slides Cloud SDK для Java. Итак, чтобы использовать SDK, все, что вам нужно сделать, это добавить его ссылку в pom.xml проекта сборки maven.
<repositories>
<repository>
<id>aspose-cloud</id>
<name>artifact.aspose-cloud-releases</name>
<url>https://artifact.aspose.cloud/repo</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-slides-cloud</artifactId>
<version>22.9.0</version>
</dependency>
</dependencies>
После добавления ссылки на SDK следующим важным шагом будет аутентификация с помощью Aspose Cloud. Если у вас нет существующей учетной записи, создайте бесплатную учетную запись, используя действующий адрес электронной почты. Затем войдите в систему, используя только что созданную учетную запись, и найдите/создайте идентификатор клиента и секрет клиента на Cloud Dashboard. Эти данные необходимы для аутентификации в следующих разделах.
Объедините PowerPoint в Java
В этом разделе объясняются подробности того, как мы можем объединить презентации PowerPoint с помощью Java Cloud SDK. Обратите внимание, что для объединения PowerPoint входной файл PowerPoint может быть загружен с локального диска, загружен из облачного хранилища или даже загружен напрямую из веб-URL. Пожалуйста, следуйте инструкциям, указанным ниже.
- Прежде всего, создайте объект объекта SlidesApi, указав ClientID и Client secret в качестве аргументов.
- Во-вторых, создайте объект FileInfo, где мы предоставим данные для первого PowerPoint.
- В-третьих, создайте экземпляр ArrayList, который будет содержать список объединяемых файлов PPT.
- Следующим шагом является создание отдельного объекта PresentationToMerge для каждого PowerPoint для слияния.
- Теперь, чтобы загрузить PowerPoint из локального хранилища, нам нужно использовать значение REQUEST из перечисления PresentationToMerge.
- Чтобы указать конкретные слайды в PowerPoint для объединения, мы используем метод setSlides(…)
- Следующим шагом является установка порядка объединения файлов презентаций, и для этой цели мы собираемся использовать объект OrderedMergeRequest и использовать его метод setPresentations(..)
- Наконец, вызовите метод mergeAndSaveOnline(…), чтобы объединить презентации PowerPoint и сохранить полученный файл в облачном хранилище.
try
{
// Получите ClientID и ClientSecret с https://dashboard.aspose.cloud/
String clientId = "7ef10407-c1b7-43bd-9603-5ea9c6db83cd";
String clientSecret = "ba7cc4dc0c0478d7b508dd8ffa029845";
// создать экземпляр SlidesApi
SlidesApi slidesApi = new SlidesApi(clientId,clientSecret);
// Соберите презентации для слияния.
FileInfo fileInfo = new FileInfo();
// читать входную презентацию
fileInfo.setData(Files.readAllBytes(Paths.get("TemplateCV.pptx")));
// установить имя источника PowerPoint
fileInfo.setName("TemplateCV.pptx");
// Создайте список массивов объекта FileInfo
List<FileInfo> files = new ArrayList<FileInfo>();
// добавить объект FileInfo в список массивов
files.add(fileInfo);
// Подготовьте информацию для первой презентации для слияния.
PresentationToMerge presentation1 = new PresentationToMerge();
// читать PowerPoint с локального диска
presentation1.setSource(PresentationToMerge.SourceEnum.REQUEST);
// установить путь к первому файлу PowerPoint
presentation1.setPath("TemplateCV.pptx");
// указываем слайды PowerPoint, которые нам нужно объединить
presentation1.setSlides(Arrays.asList(1, 2));
// Подготовьте информацию для первой презентации для слияния.
PresentationToMerge presentation2 = new PresentationToMerge();
presentation2.setPath("Presentation1.pptx");
// установить данные пароля, если PowerPoint защищен паролем
///presentation2.setPassword("мой_пароль");
// указать источник как облачное хранилище
presentation2.setSource(PresentationToMerge.SourceEnum.STORAGE);
// Подготовьте информацию для первой презентации для слияния.
PresentationToMerge presentation3 = new PresentationToMerge();
// путь к PowerPoint как веб-URL
presentation3.setPath("https://github.com/aspose-slides-cloud/aspose-slides-cloud-java/blob/master/TestData/test-unprotected.pptx");
presentation3.setSlides(Arrays.asList(1));
// установить значение пути как URL
presentation3.setSource(PresentationToMerge.SourceEnum.URL);
// Подготовьте запрос на слияние.
OrderedMergeRequest request = new OrderedMergeRequest();
// установить порядок слияния для презентаций PowerPoint
request.setPresentations(Arrays.asList(presentation1, presentation2));//, presentation3));
// вызвать API для объединения PowerPoint и сохранения вывода в облачном хранилище
slidesApi.mergeAndSaveOnline("Merged.pptx", files, request, "internal"); // mergeOnline(files, request, null);
System.out.println("Merge PowerPoint successful !");
}catch(Exception ex)
{
System.out.println(ex);
}
Файлы примеров, используемые в приведенном выше примере, можно загрузить из TemplateCV.pptx, Presentation1.pptx и Merged.ppt.
Объединить PowerPoint с помощью команд cURL
Команды cURL не зависят от платформы и могут выполняться на любой платформе. Итак, в этом разделе рассказывается о том, как объединить презентации PowerPoint с помощью команд cURL. Итак, из предварительных условий для этого подхода сначала нам нужно сгенерировать токен доступа JWT (на основе учетных данных клиента) при выполнении следующей команды.
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bb959721-5780-4be6-be35-ff5c3a6aa4a2&client_secret=4d84d5f6584160cbd91dba1fe145db14" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
Когда у нас будет токен JWT, следующим шагом будет объединение презентаций PowerPoint с помощью следующей команды. Обратите внимание, что в следующей команде мы объединяем первый слайд из первой презентации и из второй презентации, 1-й и 3-й слайды объединяются. Объединенный PPTX сохраняется в облачном хранилище.
curl -v -X PUT "https://api.aspose.cloud/v3.0/slides/merge?outPath=newResultant.pptx" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>" \
-H "Content-Type: application/json" \
-d "{ \"Presentations\": [ { \"Path\": \"Presentation1.pptx\", \"Password\": \"string\", \"Slides\": [ 1 ], \"Source\": \"Storage\" }, { \"Path\": \"test-unprotected.pptx\", \"Password\": \"string\", \"Slides\": [ 1,3 ], \"Source\": \"Storage\" } ]}"
Заключение
Эта статья рассказала нам о деталях объединения презентаций PowerPoint с использованием Java Cloud SDK. Помимо фрагмента кода Java, мы также узнали подробности о том, как объединить несколько презентаций в одну с помощью команд cURL. Кроме того, мы настоятельно рекомендуем изучить продукт Документация, чтобы узнать о множестве замечательных функций, предлагаемых Cloud API. Также обратите внимание, что все наши Cloud SDK публикуются под лицензией MIT, поэтому вы можете загрузить полный исходный код с GitHub и изменить его в соответствии со своими требованиями. В случае возникновения каких-либо проблем вы можете обратиться к нам для быстрого решения через бесплатный форум поддержки продукта.
Статьи по Теме
Пожалуйста, перейдите по следующим ссылкам, чтобы узнать больше о: