Файл PowerPoint представляет собой файл презентации, разработанный Microsoft PowerPoint. В некоторых случаях может потребоваться объединить две или более презентаций PowerPoint. Например, вам нужно объединить слайды для создания презентаций с использованием ранее созданных слайд-шоу для ссылки на данные или когда разные пользователи работают над одной и той же темой. Объединение слайдов PowerPoint поможет вам сохранить согласованность информации и сделать презентации PowerPoint более эффективными. Сегодня мы узнаем, как объединить несколько презентаций PowerPoint в одну в Node.js.
В этой статье должны быть раскрыты следующие темы:
- Слияние документов REST API и Node.js SDK
- Объединение нескольких презентаций PowerPoint в Node.js с помощью REST API
- Как объединить определенные слайды PowerPoint с помощью Node.js
Слияние документов REST API и Node.js SDK
Чтобы объединить несколько файлов PPTX, я буду использовать API Node.js SDK для GroupDocs.Merger Cloud. Он позволяет объединять, извлекать, удалять и изменять порядок одной страницы или набора страниц из поддерживаемых форматов документов, таких как Word, Excel, PowerPoint, рисунки Visio, PDF, HTML и т. д.
Вы можете установить облако GroupDocs.Merger в свое приложение Node.js с помощью следующей команды в консоли:
npm install groupdocs-merger-cloud
Прежде чем выполнять указанные шаги, получите свой идентификатор клиента и секрет на панели управления. Получив свой идентификатор и секрет, добавьте код, как показано ниже:
// Импортируйте Node.js SDK в приложение узла с http://api.groupdocs.cloud.
global.groupdocs_merger_cloud = require("groupdocs-merger-cloud");
global.fs = require("fs");
// получить clientId и clientSecret с https://dashboard.groupdocs.cloud (требуется бесплатная регистрация).
global.clientId = "xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";
global.clientSecret = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
global.myStorage = "test-internal-storage";
const config = new groupdocs_merger_cloud.Configuration(clientId, clientSecret);
config.apiBaseUrl = "https://api.groupdocs.cloud";
Объединение нескольких презентаций PowerPoint в Node.js с помощью REST API
Вы можете программно объединить несколько презентаций PowerPoint в один файл в облаке, выполнив простые шаги, указанные ниже:
- Загрузить файлы PowerPoint в облако
- Объединить несколько файлов PowerPoint с помощью Node.js
- Скачать объединенная презентация PPTX
Загрузите файлы PowerPoint
Во-первых, загрузите файлы PowerPoint в облако, используя приведенный ниже пример кода:
// построить FileApi
let fileApi = groupdocs_merger_cloud.FileApi.fromConfig(config);
// откройте папку с несколькими файлами pptx на системном диске.
let resourcesFolder = 'H:\\groupdocs-cloud-data\\sample-pptx\\';
fs.readdir(resourcesFolder, (err, files) => {
files.forEach(file => {
// читать файлы один за другим
fs.readFile(resourcesFolder + file, (err, fileStream) => {
// создать запрос на загрузку файла
let request = new groupdocs_merger_cloud.UploadFileRequest("nodejs-testing/" + file, fileStream, myStorage);
// загрузить файл
fileApi.uploadFile(request)
.then(function (response) {
console.log(file + " file uploaded: " + response.uploaded.length);
})
.catch(function (error) {
console.log("Error: " + error.message);
});
});
});
});
В результате загруженные файлы PowerPoint будут доступны в разделе файлов вашей панели инструментов в облаке.
Объединение нескольких файлов PowerPoint с помощью Node.js
Вы можете легко объединить несколько файлов PPT или PPTX в один файл программно, выполнив шаги, указанные ниже:
- Создайте экземпляр DocumentApi.
- Теперь создайте первый объект JoinItem.
- Далее создаем первый элемент FileInfo
- Укажите путь к входному файлу для первого элемента JoinItem в FileInfo.
- Создайте второй объект JoinItem.
- Создайте второй элемент FileInfo
- Укажите путь к входному файлу для второго элемента JoinItem в FileInfo.
- Создайте несколько файлов JoinOptions
- Добавить разделенный запятыми список созданных элементов соединения
- Установить путь к выходному файлу
- Создайте JoinRequest с JoinOptions в качестве аргумента
- Получите результаты, вызвав метод join() DocumentAPI.
В следующем фрагменте кода показано, как объединить несколько презентаций PowerPoint с помощью REST API в Node.js:
// Как объединить файлы PowerPoint ppt/pptx с помощью Node.js
const combine = async () => {
let documentApi = groupdocs_merger_cloud.DocumentApi.fromKeys(clientId, clientSecret);
// создать первый элемент соединения
let item1 = new groupdocs_merger_cloud.JoinItem();
item1.fileInfo = new groupdocs_merger_cloud.FileInfo();
item1.fileInfo.filePath = "nodejs-testing/sample-file1.pptx";
// создать второй элемент соединения
let item2 = new groupdocs_merger_cloud.JoinItem();
item2.fileInfo = new groupdocs_merger_cloud.FileInfo();
item2.fileInfo.filePath = "nodejs-testing/sample-file2.pptx";
// создать параметры присоединения
let options = new groupdocs_merger_cloud.JoinOptions();
options.joinItems = [item1, item2];
options.outputPath = "nodejs-testing/joined-file.pptx";
try {
// Создать запрос на объединение документов
let joinRequest = new groupdocs_merger_cloud.JoinRequest(options);
let result = await documentApi.join(joinRequest);
}
catch (err) {
throw err;
}
}
combine()
.then(() => {
console.log("Successfully combined powerpoint pptx files: ");
})
.catch((err) => {
console.log("Error occurred while merging the PowerPoint files:", err);
})
Загрузите объединенный файл
Приведенный выше пример кода сохранит объединенный файл PowerPoint PPTX в облаке. Вы можете загрузить его, используя следующий пример кода:
// построить FileApi для загрузки объединенного файла
var fileApi = groupdocs_merger_cloud.FileApi.fromConfig(config);
// создать запрос на загрузку файла
let request = new groupdocs_merger_cloud.DownloadFileRequest("nodejs-testing/joined-file.pptx", myStorage);
// скачать файл и тип ответа Stream
fileApi.downloadFile(request)
.then(function (response) {
// сохранить файл в системном каталоге
fs.writeFile("H:\\groupdocs-cloud-data\\joined-file.pptx", response, "binary", function (err) { });
console.log("Expected response type is Stream: " + response.length);
})
.catch(function (error) {
console.log("Error: " + error.message);
});
Как объединить определенные слайды PowerPoint с помощью Node.js
Вы можете легко программно объединить определенные слайды из нескольких файлов PPTX в один файл, выполнив шаги, указанные ниже:
- Во-первых, создайте экземпляр DocumentApi.
- Затем создайте первый объект JoinItem.
- Теперь создайте первый элемент FileInfo
- Установите путь к входному файлу для первого элемента JoinItem в FileInfo.
- Укажите через запятую список страниц для объединения
- Создайте второй объект JoinItem.
- Создайте второй элемент FileInfo
- Установите путь к входному файлу для второго элемента JoinItem в FileInfo.
- Теперь установите значение startPageNumber
- затем установите значение endPageNumber
- Создайте несколько файлов JoinOptions
- Добавить разделенный запятыми список созданных элементов соединения
- Установить путь к выходному файлу
- Создайте JoinRequest с JoinOptions в качестве аргумента
- Получите результаты, вызвав метод join() DocumentAPI.
В следующем фрагменте кода показано, как объединить определенные слайды PowerPoint pptx с помощью REST API в Node.js:
// Как объединить определенные слайды файлов ppt/pptx с помощью Node.js
const mergespecific = async () => {
// Инициализация API слияния ppt/pptx
let documentApi = groupdocs_merger_cloud.DocumentApi.fromKeys(clientId, clientSecret);
// создать первый элемент соединения
let item1 = new groupdocs_merger_cloud.JoinItem();
item1.fileInfo = new groupdocs_merger_cloud.FileInfo();
item1.fileInfo.filePath = "nodejs-testing/sample-file1.pptx";
item1.pages = [3, 4];
// создать второй элемент соединения
let item2 = new groupdocs_merger_cloud.JoinItem();
item2.fileInfo = new groupdocs_merger_cloud.FileInfo();
item2.fileInfo.filePath = "nodejs-testing/sample-file2.pptx";
item2.startPageNumber = 2
item2.endPageNumber = 4
// создать параметры присоединения
let options = new groupdocs_merger_cloud.JoinOptions();
options.joinItems = [item1, item2];
options.outputPath = "nodejs-testing/joined-file.pptx";
try {
// Создать запрос на объединение документов
let joinRequest = new groupdocs_merger_cloud.JoinRequest(options);
let result = await documentApi.join(joinRequest);
}
catch (err) {
throw err;
}
}
mergespecific()
.then(() => {
console.log("Successfully merged pptx slides: ");
})
.catch((err) => {
console.log("Error occurred while combining the PowerPoint files:", err);
})
Попробуйте онлайн
Попробуйте следующий бесплатный онлайн-инструмент слияния PPTX, разработанный с использованием вышеуказанного API.
Заключение
В этой статье вы узнали:
- как объединить несколько файлов PowerPoint в облаке;
- программно загружать файлы PowerPoint в облако;
- как объединить определенные слайды pptx в один файл с помощью REST API в Node.js;
- программно скачать объединенный файл из облака;
API также позволяет вам переупорядочивать или заменять страницы документа, изменять ориентацию страниц, управлять паролями документов и легко выполнять другие манипуляции для любого поддерживаемого формата файлов. Он также предоставляет пакеты SDK для .NET, Java, PHP, Ruby, Android и Python в качестве членов семейства слияния документов для Cloud API. Вы можете узнать больше о GroupDocs.Merge Cloud API, используя документацию. Мы также предоставляем раздел Справочник по API, который позволяет визуализировать наши API и взаимодействовать с ними непосредственно через браузер.
Задайте вопрос
Вы можете задать свои вопросы о том, как объединить слайды PPTX, через наш бесплатный форум поддержки.
Смотрите также
- Объединение PDF-файлов с помощью REST API
- Объединение нескольких документов Word с помощью Python
- Извлечение страниц из документов Word в Python
- Объединение и объединение файлов PowerPoint PPT/PPTX в Python
- Как разделить слайды PowerPoint PPT или PPTX в Python
- Как объединить или объединить несколько текстовых файлов в один в Ruby