Преобразование электронных таблиц Excel в PDF с помощью Node.js

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

В этой статье должны быть раскрыты следующие темы:

Преобразование Excel в PDF REST API и Node.js SDK

Для преобразования XLSX в PDF я буду использовать API Node.js SDK GroupDocs.Conversion Cloud. API позволяет конвертировать ваши документы в любой нужный вам формат. Он поддерживает преобразование более 50 типов документов и изображений, таких как Word, Excel, PowerPoint, PDF, HTML, JPG, PNG, CAD. Он также предоставляет SDK для .NET, Java, PHP, Ruby, Android и Python в качестве членов семейства преобразования документов для Cloud API.

Вы можете установить GroupDocs.Conversion Cloud в свое приложение Node.js, используя следующую команду в консоли:

npm install groupdocs-conversion-cloud

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

global.clientId = "112f0f38-9dae-42d5-b4fc-cc84ae644972";
global.clientSecret = "16ad3fe0bdc39c910f57d2fd48a5d618";
global.myStorage = "";

const config = new groupdocs_conversion_cloud.Configuration(clientId, clientSecret);
config.apiBaseUrl = "https://api.groupdocs.cloud";

Преобразование Excel в PDF с помощью REST API в Node.js

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

  1. Загрузить файл XLSX в облако
  2. Преобразовать Excel в PDF с помощью Node.js
  3. Скачать преобразованный PDF-файл

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

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

// открыть файл в IOStream с локального диска/диска.
var resourcesFolder = 'C:\\Files\\sample.xlsx';
fs.readFile(resourcesFolder, (err, fileStream) => {
  // построить FileApi
  var fileApi = groupdocs_conversion_cloud.FileApi.fromConfig(config);
  // создать запрос на загрузку файла
  var request = new groupdocs_conversion_cloud.UploadFileRequest("sample.xlsx", fileStream, myStorage);
  // загрузить файл
  fileApi.uploadFile(request);
});

В результате загруженный файл XLSX будет доступен в разделе файлов вашей панели инструментов в облаке.

Преобразование Excel в PDF с помощью Node.js

Вы можете легко преобразовать документ XLSX в PDF программно, выполнив шаги, указанные ниже:

  • Создайте экземпляр ConvertApi
  • Создайте экземпляр ConvertSettings
  • Установите путь к файлу XLSX
  • Назначьте «pdf» для формата
  • Укажите путь к выходному файлу
  • Создайте ConvertDocumentRequest с ConvertSettings
  • Преобразуйте, вызвав метод ConvertApi.convertDocument() с ConvertDocumentRequest.

В следующем примере кода показано, как преобразовать электронную таблицу Excel в документ PDF с помощью REST API в Node.js.

// инициализировать API
let convertApi = groupdocs_conversion_cloud.ConvertApi.fromKeys(clientId, clientSecret);

// определить настройки преобразования
let settings = new groupdocs_conversion_cloud.ConvertSettings();
settings.filePath = "sample.xlsx";  // input file path
settings.format = "pdf";            // convert format
settings.outputPath = "output";     // output file folder on the cloud storage

// создать запрос на преобразование документа 
let request = new groupdocs_conversion_cloud.ConvertDocumentRequest(settings);

// конвертировать документ
let result = await convertApi.convertDocument(request);
// показать преобразованный путь к файлу
console.log("Document converted successfully: " + result[0].url);
Преобразование Excel в PDF с помощью REST API в Node.js

Преобразование Excel в PDF с помощью REST API в Node.js

Загрузите преобразованный файл

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

// построить FileApi
var fileApi = groupdocs_conversion_cloud.FileApi.fromConfig(config);

// создать запрос на скачивание файла
let request = new groupdocs_conversion_cloud.DownloadFileRequest("output/sample.pdf", myStorage);

// Загрузка файла
let response = await fileApi.downloadFile(request);

// скопировать файл в рабочий каталог
fs.writeFile("C:\\Files\\converted.pdf", response, "binary", function (err) { });
console.log(response);

Преобразование определенных электронных таблиц Excel в PDF в Node.js

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

  • Создайте экземпляр ConvertApi
  • Создайте экземпляр ConvertSettings
  • Установите путь к файлу XLSX
  • Назначьте «pdf» для формата
  • Укажите путь к выходному файлу
  • Создайте экземпляр PdfConvertOptions
  • Предоставьте конкретные электронные таблицы для преобразования
  • Установить PdfConvertOptions
  • Создайте ConvertDocumentRequest с ConvertSettings
  • Преобразуйте, вызвав метод ConvertApi.convertDocument() с ConvertDocumentRequest.

В следующем примере кода показано, как преобразовать конкретную электронную таблицу Excel в документ PDF с помощью REST API в Node.js.

// инициализировать API
let convertApi = groupdocs_conversion_cloud.ConvertApi.fromKeys(clientId, clientSecret);

// определить настройки преобразования
let settings = new groupdocs_conversion_cloud.ConvertSettings();
settings.filePath = "sample.xlsx";
settings.format = "pdf";

// определить параметры преобразования PDF
let convertOptions = new groupdocs_conversion_cloud.PdfConvertOptions();
convertOptions.pages = [1];  // define pages (sheets) to convert

settings.convertOptions = convertOptions
settings.outputPath = "specific_pages.pdf";

// создать запрос на преобразование документа
let request = new groupdocs_conversion_cloud.ConvertDocumentRequest(settings);

// конвертировать документ
let result = await convertApi.convertDocument(request);
console.log("Document converted successfully: " + result[0].url);
Преобразование определенных электронных таблиц Excel в PDF в Node.js

Преобразование определенных электронных таблиц Excel в PDF в Node.js

Преобразование Excel в PDF с дополнительными параметрами

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

  • Создайте экземпляр ConvertApi
  • Создайте экземпляр ConvertSettings
  • Установите путь к файлу XLSX
  • Назначьте «pdf» для формата
  • Укажите путь к выходному файлу
  • Создайте экземпляр SpreadsheetLoadOptions
  • Установите различные параметры загрузки, такие как hideComments, onePagePerSheet и т. д.
  • Создайте экземпляр PdfConvertOptions
  • Установите различные параметры преобразования, такие как displayDocTitle, fromPage, pagesCount, поля (верхнее, левое, правое, нижнее) и т. д.
  • Создайте ConvertDocumentRequest с ConvertSettings
  • Преобразуйте, вызвав метод ConvertApi.convertDocument() с ConvertDocumentRequest.

В следующем примере кода показано, как преобразовать электронную таблицу Excel в документ PDF с расширенными параметрами преобразования.

// инициализировать API
let convertApi = groupdocs_conversion_cloud.ConvertApi.fromKeys(clientId, clientSecret);

// определить настройки преобразования
var settings = new groupdocs_conversion_cloud.ConvertSettings();
settings.storageName = myStorage;
settings.filePath = "sample.xlsx";
settings.format = "pdf";

// определить параметры загрузки электронной таблицы
var loadOptions = new groupdocs_conversion_cloud.SpreadsheetLoadOptions();
loadOptions.hideComments = true;		  // hide comments	
loadOptions.onePagePerSheet = true;		// set one page per sheet

settings.loadOptions = loadOptions;

// определить параметры преобразования PDF
let convertOptions = new groupdocs_conversion_cloud.PdfConvertOptions();
convertOptions.centerWindow = true;		  // set position of the document's window. Default: false.
convertOptions.displayDocTitle = true;	// display document title. Default: false
convertOptions.fromPage = 2;			      // Start conversion from
convertOptions.pagesCount = 3;			    // Number of pages(sheets) to convert
convertOptions.marginTop = 5;			      // top margin
convertOptions.marginLeft = 5;			    // left margin

settings.convertOptions = convertOptions;
settings.outputPath = "converted.pdf";

// создать запрос на преобразование документа
var request = new groupdocs_conversion_cloud.ConvertDocumentRequest(settings);

// создать документ
convertApi.convertDocument(request)
Преобразование электронных таблиц Excel в PDF с помощью Node.js

Преобразование Excel в PDF с дополнительными параметрами

Преобразование Excel в PDF без использования облачного хранилища

Вы можете преобразовать электронные таблицы Excel в документы PDF без использования облачного хранилища, выполнив шаги, указанные ниже:

  • Создайте экземпляр ConvertApi
  • Чтение входного файла XLSX из локального пути
  • Создать ConvertDocumentDirectRequest
  • Укажите целевой формат и путь к входному файлу в качестве входных параметров.
  • Получите результаты, вызвав метод convertDocumentDirect() с ConvertDocumentDirectRequest.
  • Сохраните выходной файл по локальному пути, используя метод FileStream.writeFile().

В следующем примере кода показано, как преобразовать электронную таблицу Excel в документ PDF без использования облачного хранилища. Это означает, что вы передадите входной файл в теле запроса и получите выходной файл в ответе API.

// инициализировать API
let convertApi = groupdocs_conversion_cloud.ConvertApi.fromKeys(clientId, clientSecret);

// читать файл с локального пути
let file = fs.readFileSync('C:\\Files\\sample.xlsx');

// создать прямой запрос конвертации документа
let request = new groupdocs_conversion_cloud.ConvertDocumentDirectRequest("pdf", file);

// конвертировать документ
let result = await convertApi.convertDocumentDirect(request);

// сохранить выходной файл по указанному пути
fs.writeFile("C:\\Files\\sample_direct.pdf", result, "binary", function (err) { });
console.log("Document converted: " + result.length);

Преобразование Excel в PDF и добавление водяного знака

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

  • Создайте экземпляр ConvertApi
  • Создайте экземпляр ConvertSettings
  • Установите путь к файлу XLSX
  • Назначьте «pdf» для формата
  • Укажите путь к выходному файлу
  • Создайте экземпляр WatermarkOptions
  • Установите текст водяного знака, цвет, ширину, высоту и т. д.
  • Определите PdfConvertOptions и назначьте WatermarkOptions
  • Создайте ConvertDocumentRequest с ConvertSettings
  • Преобразуйте, вызвав метод ConvertApi.convertDocument() с ConvertDocumentRequest.

В следующем примере кода показано, как преобразовать электронную таблицу Excel в документ PDF и добавить водяной знак в преобразованный документ PDF с помощью REST API в Node.js.

// инициализировать API
let convertApi = groupdocs_conversion_cloud.ConvertApi.fromKeys(clientId, clientSecret);

// определить настройки преобразования
let settings = new groupdocs_conversion_cloud.ConvertSettings();
settings.filePath = "sample.xlsx";
settings.format = "pdf";
settings.outputPath = "converted";

// определить параметры водяного знака
let watermark = new groupdocs_conversion_cloud.WatermarkOptions();
watermark.text = "CONFIDENTIAL";
watermark.bold = true;
watermark.fontSize = 44;
watermark.color = "Gray";
watermark.background = false;
watermark.rotationAngle = 30;
watermark.left = 100;
watermark.top = 250;

// определить параметры преобразования PDF
let convertOptions = new groupdocs_conversion_cloud.PdfConvertOptions();
convertOptions.watermarkOptions = watermark;

// назначить параметры преобразования
settings.convertOptions = convertOptions

// создать запрос на преобразование документа
let request = new groupdocs_conversion_cloud.ConvertDocumentRequest(settings);

// конвертировать документ
let result = await convertApi.convertDocument(request);
// показать путь к выходному документу
console.log("Document converted successfully: " + result[0].url);
Преобразование Excel в PDF и добавление водяного знака

Преобразование Excel в PDF и добавление водяного знака

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

Пожалуйста, попробуйте следующий бесплатный онлайн-инструмент преобразования XLSX в PDF, разработанный с использованием вышеуказанного API. https://products.groupdocs.app/conversion/xlsx-to-pdf

Заключение

В этой статье вы узнали, как конвертировать документы Excel в PDF в облаке. Вы также узнали, как добавить водяной знак в преобразованный документ PDF с помощью Node.js. Кроме того, вы узнали, как конвертировать электронные таблицы Excel в документы PDF без использования облачного хранилища. Кроме того, вы узнали, как программно загрузить файл XLSX в облако, а затем загрузить преобразованный файл из облака. Вы можете узнать больше о GroupDocs.Conversion Cloud API, используя документацию. Мы также предоставляем раздел Справочник по API, который позволяет визуализировать наши API и взаимодействовать с ними непосредственно через браузер. В случае возникновения каких-либо неясностей, пожалуйста, свяжитесь с нами на форуме.

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