Как извлечь страницы из PDF-файла с помощью Rest API в Node.js

Как извлечь страницы из PDF-файлов с помощью Rest API в Node.js

Возможно, вам потребуется программно извлечь несколько страниц из PDF одновременно. Разделяя страницы PDF, вы можете легко экспортировать и сохранять определенные страницы документов PDF, чтобы поделиться ими с заинтересованными сторонами. Как разработчик Node.js, вы можете извлекать несколько страниц из документов PDF в облаке. В этой статье мы покажем, как извлекать страницы из PDF-файла с помощью Rest API в Node.js.

В этой статье должны быть затронуты следующие темы, чтобы вынуть страницы из PDF:

PDF Extractor REST API и Node.js SDK

Чтобы извлечь страницы из PDF Adobe Acrobat, я буду использовать API Node.js SDK для GroupDocs.Merger Cloud. Это бесплатная онлайн-библиотека для извлечения страниц PDF. Он позволяет разделять, объединять, извлекать, удалять и изменять порядок одной страницы или набора страниц из поддерживаемых форматов документов из Word, Excel, PowerPoint. ], чертежи Visio, PDF и HTML.

Вы можете установить облако GroupDocs.Merger для извлечения страниц PDF из файлов PDF в вашем приложении 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";

Извлечение страниц PDF по точным номерам страниц с помощью REST API в Node.js

Вы можете экспортировать одну страницу из PDF или программно экспортировать определенные страницы из PDF-файлов в облаке, выполнив простые шаги, указанные ниже:

Загрузите PDF-файл

Вы можете начать с импорта файла PDF в облако, используя приведенный ниже пример кода:

// откройте файл в IOStream с вашего системного диска.
var resourcesFolder = 'H:\\groupdocs-cloud-data\\input-sample-file.pdf';
// прочитать файл
fs.readFile(resourcesFolder, (err, fileStream) => {
  // построить FileApi
  var fileApi = groupdocs_merger_cloud.FileApi.fromConfig(config);
  // создать запрос на загрузку файла
  var request = new groupdocs_merger_cloud.UploadFileRequest("input-sample-file.pdf", fileStream, myStorage);
  // загрузить файл
  fileApi.uploadFile(request)
    .then(function (response) {
      console.log("Expected response type is FilesUploadResult: " + response.uploaded.length);
    })
    .catch(function (error) {
      console.log("Error: " + error.message);
    });
});

Файл PDF будет доступен, когда файл будет загружен в раздел файлов вашей панели управления в облаке.

Извлечение страниц PDF с помощью REST API в Node.js

Следующие шаги научат вас программно извлекать страницы из файла PDF:

  • Во-первых, создайте экземпляр PagesApi.
  • Создайте экземпляр ExtractOptions.
  • Создайте экземпляр FileInfo.
  • Затем укажите путь к входному файлу PDF.
  • Далее укажите путь к извлеченному файлу PDF.
  • Задайте определенные номера страниц в массиве, разделенном запятыми, для извлечения PDF-файлов.
  • Создайте ExtractRequest с ExtractOptions.
  • Наконец, вызовите метод pagesApi.extract() с ExtractRequest, чтобы получить результаты.

В следующем фрагменте кода показано, как извлечь страницы PDF в отдельные файлы с помощью REST API в Node.js:

// Как извлечь страницы PDF по точным номерам страниц с помощью REST API в Node.js
const extractpdfpages = async () => {

  // инициализация API
  global.pagesApi = groupdocs_merger_cloud.PagesApi.fromKeys(clientId, clientSecret);

  // определить параметры извлечения
  let options = new groupdocs_merger_cloud.ExtractOptions();
  options.fileInfo = new groupdocs_merger_cloud.FileInfo();
  options.fileInfo.filePath = "nodejs-testing/input-sample-file.pdf"; 
  options.outputPath = "nodejs-testing/output-sample-file.pdf"; 
  options.pages = [2, 4, 7];
  
  try {
    // создать запрос на извлечение
    let extractRequest = new groupdocs_merger_cloud.ExtractRequest(options);
    // извлечь страницы из документа pdf
    let result = await pagesApi.extract(extractRequest);
  }
  catch (err) {
    throw err;
  }
}

extractpdfpages()
.then(() => {
  console.log("Successfully extract PDF pages: ");
})
.catch((err) => {
  console.log("Error occurred while extracting pages from PDF file:", err);
})

Загрузите извлеченные файлы

Приведенный выше пример кода сохранит разделенные файлы в облаке. Вы можете загрузить их, используя следующий пример кода:

// построить FileApi для загрузки объединенного файла
var fileApi = groupdocs_merger_cloud.FileApi.fromConfig(config);
// создать запрос на загрузку файла
let request = new groupdocs_merger_cloud.DownloadFileRequest("nodejs-testing/output-sample-file.pdf", myStorage);
// скачать файл и тип ответа Stream
fileApi.downloadFile(request)
    .then(function (response) {
        // сохранить файл в системном каталоге
        fs.writeFile("H:\\groupdocs-cloud-data\\output-sample-file.pdf", response, "binary", function (err) { });
        console.log("Expected response type is Stream: " + response.length);
    })
    .catch(function (error) {
        console.log("Error: " + error.message);
    });

Извлечение страниц из PDF по диапазону страниц с использованием REST API в Node.js

Вы можете извлекать и сохранять страницы из PDF-файла отдельно, программно указав диапазон номеров страниц, выполнив следующие шаги:

  • Во-первых, создайте экземпляр PagesApi.
  • Создайте экземпляр ExtractOptions.
  • Создайте экземпляр FileInfo.
  • Затем укажите путь к входному файлу PDF.
  • Далее укажите путь к извлеченному файлу PDF.
  • Установите значения номера начальной страницы и номера конечной страницы.
  • Затем установите rangeMode как EvenPages или OddPages.
  • Создайте ExtractRequest с ExtractOptions.
  • Наконец, вызовите метод pagesApi.extract() с ExtractRequest, чтобы получить результаты.

В следующем фрагменте кода показано, как извлекать страницы из PDF в режиме онлайн, используя диапазон страниц и режим страницы в Node.js:

// Как извлечь страницы из PDF по диапазону страниц с помощью REST API в Node.js
const extractpages = async () => {

  // инициализация API
  global.pagesApi = groupdocs_merger_cloud.PagesApi.fromKeys(clientId, clientSecret);

  // определить параметры извлечения
  let options = new groupdocs_merger_cloud.ExtractOptions();
  options.fileInfo = new groupdocs_merger_cloud.FileInfo();
  options.fileInfo.filePath = "nodejs-testing/input-sample-file.pdf"; 
  options.outputPath = "nodejs-testing/output-sample-file.pdf"; 
  options.startPageNumber = 1;
  options.endPageNumber = 10;
  options.rangeMode = groupdocs_merger_cloud.ExtractOptions.RangeModeEnum.EvenPages;
  
  try {
    // создать запрос на извлечение
    let extractRequest = new groupdocs_merger_cloud.ExtractRequest(options);
    // извлечь страницы файла PDF
    let result = await pagesApi.extract(extractRequest);
  } 
  catch (err) {
    throw err;
  }
}

extractpages()
.then(() => {
  console.log("Successfully extratcing pages of PDF file.");
})
.catch((err) => {
  console.log("Error occurred while extracting pages from PDF file.", err);
})

Аналогичным образом вы можете извлечь нечетные страницы из документов PDF.

Попробуйте онлайн

Как извлечь страницы из файлов PDF онлайн? Пожалуйста, попробуйте следующий бесплатный онлайн-инструмент для извлечения PDF, чтобы бесплатно извлечь страницы из PDF онлайн. Этот бесплатный онлайн-инструмент для извлечения страниц PDF разработан с использованием вышеуказанного API.

Заключение

Мы завершаем эту запись в блоге здесь. В этой статье вы узнали:

  • как извлечь определенные страницы из PDF или извлечь одну страницу из PDF онлайн с помощью REST API;
  • как извлекать страницы из PDF-документов, используя диапазон страниц и фильтр режима диапазона;
  • загрузить файл PDF в облако, чтобы экспортировать выбранные страницы из PDF онлайн;
  • загружать и сохранять определенные страницы PDF из облака;
  • как извлечь страницы из PDF бесплатно;

Теперь вы знаете, как извлечь одну страницу из документа PDF или как сохранить определенные страницы PDF. API также позволяет вам переупорядочивать или заменять страницы документа, изменять ориентацию страницы, управлять паролями документов и легко выполнять другие манипуляции для любого поддерживаемого формата файла. Кроме того, вы можете узнать больше о GroupDocs.Merge Cloud API, воспользовавшись документацией. Мы также предоставляем раздел Справочник по API, который позволяет визуализировать наши API и взаимодействовать с ними непосредственно через браузер.

Кроме того, мы рекомендуем вам обратиться к нашему Руководству по началу работы

Кроме того, groupdocs.cloud регулярно пишет статьи на новые темы. Поэтому, пожалуйста, оставайтесь на связи, чтобы быть в курсе последних обновлений.

Задайте вопрос

Вы можете задать свои вопросы о том, как извлечь PDF-файлы для экспорта выбранных страниц из PDF, через наш Бесплатный форум поддержки

Часто задаваемые вопросы

Как извлечь несколько страниц из PDF в один файл?

Установите JS-библиотеку для разделения PDF-файлов на несколько страниц программным способом онлайн. Вы можете посетить документацию для получения полной информации об API.

Сколько времени занимает извлечение определенных страниц из PDF?

Библиотека JavaScript HTML to PDF работает очень быстро, и вы можете легко извлечь страницы из защищенного PDF за несколько секунд.

Смотрите также

Для лучшего чтения и информации, пожалуйста, посетите следующие статьи: