PDF является предпочтительным форматом для обмена важными документами, и общепринятой практикой является обмен документами Word в формате PDF. Хотя Microsoft Office предоставляет встроенные функции для преобразования Word в PDF, вам может потребоваться программно преобразовать документы Word (DOC или DOCX) в PDF. Как разработчик Node.js, вы можете легко преобразовывать документы Word в файлы PDF в своих приложениях Node.js в облаке. В этой статье вы узнаете, как конвертировать документы Word в PDF с помощью REST API в Node.js.
В этой статье должны быть раскрыты следующие темы:
- Преобразование DOCX в PDF REST API и Node.js SDK
- Преобразование документов Word в PDF с помощью REST API в Node.js
- Преобразование Word в PDF с дополнительными параметрами
- Преобразование Word в PDF с водяным знаком с помощью Node.js
- Преобразование DOCX в PDF без использования облачного хранилища
- Преобразование диапазона страниц из DOCX в PDF в Node.js
- Преобразование определенных страниц DOCX в PDF с помощью Node.js
Преобразование DOCX в PDF REST API и Node.js SDK
Для преобразования DOCX в PDF я буду использовать API Node.js SDK GroupDocs.Conversion Cloud. Это независимое от платформы решение для преобразования документов и изображений, не зависящее от какого-либо инструмента или программного обеспечения. Он позволяет быстро и надежно конвертировать изображения и документы любого поддерживаемого формата файла в любой нужный вам формат. Вы можете легко конвертировать более 50 типов документов и изображений, таких как Word, PowerPoint, Excel, PDF, HTML, CAD, растровые изображения и т. д.
Вы можете установить 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";
Преобразование документов Word в PDF с помощью REST API в Node.js
Вы можете программно конвертировать документы Word в PDF в облаке, выполнив простые шаги, указанные ниже:
- Загрузить файл DOCX в облако
- Преобразовать DOCX в PDF с помощью Node.js
- Скачать преобразованный PDF-файл
Загрузите файл DOCX
Во-первых, загрузите файл DOCX в облако, используя следующий пример кода:
// Откройте файл в IOStream с локального диска/диска.
var resourcesFolder = 'C:\\Files\\sample.docx';
// прочитать файл
fs.readFile(resourcesFolder, (err, fileStream) => {
// построить FileApi
var fileApi = groupdocs_conversion_cloud.FileApi.fromConfig(config);
// создать запрос на загрузку файла
var request = new groupdocs_conversion_cloud.UploadFileRequest("sample.docx", fileStream, myStorage);
// загрузить файл
fileApi.uploadFile(request);
});
В результате загруженный файл DOCX будет доступен в разделе файлов вашей панели управления в облаке.
Преобразование DOCX в PDF с помощью Node.js
Вы можете легко преобразовать документ DOCX в PDF программно, выполнив шаги, указанные ниже:
- Создайте экземпляр ConvertApi
- Создайте экземпляр ConvertSettings
- Укажите путь к входному файлу DOCX.
- Назначьте «pdf» формату
- Укажите путь к выходному файлу
- Создайте ConvertDocumentRequest с ConvertSettings
- Преобразуйте, вызвав метод convertDocument() с ConvertDocumentRequest.
В следующем примере кода показано, как преобразовать DOCX в 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.docx";
settings.format = "pdf";
settings.outputPath = "sample.pdf";
// создать запрос на преобразование документа
let request = new groupdocs_conversion_cloud.ConvertDocumentRequest(settings);
// конвертировать документ
let result = await convertApi.convertDocument(request);
console.log("Document converted successfully: " + result[0].url);
Загрузите преобразованный файл
Приведенный выше пример кода сохранит преобразованный PDF-файл в облаке. Вы можете загрузить его, используя следующий пример кода:
// построить FileApi
var fileApi = groupdocs_conversion_cloud.FileApi.fromConfig(config);
// создать запрос на загрузку файла
let request = new groupdocs_conversion_cloud.DownloadFileRequest("sample.pdf", myStorage);
// Загрузка файла
let response = await fileApi.downloadFile(request);
// сохранить в свой рабочий каталог
fs.writeFile("C:\\Files\\sample.pdf", response, "binary", function (err) { });
Преобразование Word в PDF с дополнительными параметрами
Вы можете конвертировать документы Word в файлы PDF с некоторыми дополнительными настройками, выполнив следующие действия:
- Создайте экземпляр ConvertApi
- Создайте экземпляр ConvertSettings
- Укажите путь к файлу DOCX
- Назначьте «pdf» для формата
- Укажите путь к выходному файлу
- Создайте экземпляр DocxLoadOptions
- При желании установите различные параметры загрузки, такие как hideComments, hideWordTrackedChanges и т. д.
- Создайте экземпляр PdfConvertOptions
- При желании установите различные параметры преобразования, такие как displayDocTitle, поля (верхнее, левое, правое, нижнее) и т. д.
- Создайте ConvertDocumentRequest с ConvertSettings
- Преобразуйте, вызвав метод convertDocument() с ConvertDocumentRequest.
В следующем примере кода показано, как преобразовать документ Word в документ PDF с расширенными параметрами преобразования.
// инициализация API
let convertApi = groupdocs_conversion_cloud.ConvertApi.fromKeys(clientId, clientSecret);
// определить настройки преобразования
var settings = new groupdocs_conversion_cloud.ConvertSettings();
settings.storageName = myStorage;
settings.filePath = "sample.docx";
settings.format = "pdf";
// определить параметры загрузки DOCX
var loadOptions = new groupdocs_conversion_cloud.DocxLoadOptions();
loadOptions.password = "password"; // password
loadOptions.hideComments = true; // hide comments
loadOptions.hideWordTrackedChanges = true; // hide track changes
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.marginTop = 5; // top margin
convertOptions.marginLeft = 5; // left margin
convertOptions.marginRight = 5; // right margin
convertOptions.marginBottom = 5; // bottom margin
settings.convertOptions = convertOptions;
settings.outputPath = "converted_with_options.pdf";
// создать запрос на преобразование документа
var request = new groupdocs_conversion_cloud.ConvertDocumentRequest(settings);
// конвертировать документ
convertApi.convertDocument(request);
Преобразование Word в PDF с водяным знаком с помощью Node.js
Вы можете преобразовать документы Word в документы PDF и добавить водяные знаки в преобразованные документы программным путем, выполнив следующие действия:
- Создайте экземпляр ConvertApi
- Создайте экземпляр ConvertSettings
- Укажите путь к входному файлу DOCX.
- Назначьте «pdf» формату
- Укажите путь к выходному файлу
- Создайте экземпляр WatermarkOptions
- Установите текст водяного знака, цвет, ширину, высоту и т. д.
- Определите PdfConvertOptions и назначьте WatermarkOptions
- Создайте ConvertDocumentRequest с ConvertSettings
- Преобразуйте, вызвав метод convertDocument() с ConvertDocumentRequest.
В следующем примере кода показано, как преобразовать документ Word в документ 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.docx";
settings.format = "pdf";
settings.outputPath = "converted_with_watermark.pdf";
// определить параметры водяного знака
let watermark = new groupdocs_conversion_cloud.WatermarkOptions();
watermark.text = "CONFIDENTIAL";
watermark.bold = true;
watermark.fontSize = 54;
watermark.color = "Gray";
watermark.background = false;
watermark.rotationAngle = 30;
watermark.left = 120;
watermark.top = 400;
// определить параметры преобразования 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);
Преобразование DOCX в PDF без использования облачного хранилища
Вы можете преобразовать документ Word в PDF без использования облачного хранилища, передав его в теле запроса и получив выходной файл в ответе API. Пожалуйста, следуйте инструкциям ниже, чтобы преобразовать DOCX в PDF без использования облачного хранилища.
- Создайте экземпляр ConvertApi
- Чтение входного файла DOCX из локального пути
- Создать ConvertDocumentDirectRequest
- Укажите целевой формат как «pdf» и путь к входному файлу в качестве входных параметров.
- Получите результаты, вызвав метод convertDocumentDirect() с ConvertDocumentDirectRequest.
- Сохраните выходной файл по локальному пути, используя метод FileStream.writeFile().
В следующем примере кода показано, как преобразовать документ Word в PDF без использования облачного хранилища.
// инициализация API
let convertApi = groupdocs_conversion_cloud.ConvertApi.fromKeys(clientId, clientSecret);
// прочитать входной файл
let file = fs.readFileSync('C:\\Files\\sample.docx');
// создать преобразовать запрос
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);
Преобразование диапазона страниц из DOCX в PDF в Node.js
Вы можете легко программно преобразовать ряд страниц из документа Word в файл PDF, выполнив шаги, указанные ниже:
- Создайте экземпляр ConvertApi
- Создайте экземпляр ConvertSettings
- Укажите путь к входному файлу DOCX.
- Назначьте «pdf» формату
- Укажите путь к выходному файлу
- Создайте экземпляр PdfConvertOptions
- Укажите диапазон страниц для преобразования, начиная с номера начальной страницы и заканчивая общим количеством страниц для преобразования.
- Назначьте PdfConvertOptions для ConvertSettings
- Создайте ConvertDocumentRequest с ConvertSettings
- Преобразуйте, вызвав метод convertDocument() с ConvertDocumentRequest.
В следующем примере кода показано, как преобразовать диапазон страниц из DOCX в 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.docx";
settings.format = "pdf";
// определить параметры преобразования PDF
let convertOptions = new groupdocs_conversion_cloud.PdfConvertOptions();
convertOptions.fromPage = 1; // start page number
convertOptions.pagesCount = 2; // total pages to convert
settings.convertOptions = convertOptions
settings.outputPath = "two-pages.pdf";
// создать запрос на конвертацию
let request = new groupdocs_conversion_cloud.ConvertDocumentRequest(settings);
// конвертировать документ
let result = await convertApi.convertDocument(request);
console.log("Document converted successfully: " + result[0].url);
Преобразование определенных страниц DOCX в PDF в Node.js
Вы можете программно преобразовать определенные страницы документа Word в файл PDF, выполнив шаги, указанные ниже:
- Создайте экземпляр ConvertApi
- Создайте экземпляр ConvertSettings
- Укажите путь к входному файлу DOCX.
- Назначьте «pdf» формату
- Укажите путь к выходному файлу
- Создайте экземпляр PdfConvertOptions
- Укажите конкретные номера страниц для преобразования
- Назначьте PdfConvertOptions для ConvertSettings
- Создайте ConvertDocumentRequest с ConvertSettings
- Преобразуйте, вызвав метод convertDocument() с ConvertDocumentRequest.
В следующем примере кода показано, как преобразовать определенные страницы документа Word в 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.docx";
settings.format = "pdf";
// определить параметры преобразования
let convertOptions = new groupdocs_conversion_cloud.PdfConvertOptions();
convertOptions.pages = [1,2]; // page numbers 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);
Попробуйте онлайн
Пожалуйста, попробуйте следующий бесплатный онлайн-инструмент преобразования DOCX в PDF, разработанный с использованием вышеуказанного API. https://products.groupdocs.app/conversion/docx-to-pdf
Заключение
В этой статье вы узнали, как конвертировать документы Word в файлы PDF в облаке. Вы также узнали, как преобразовать определенные страницы документа Word в PDF с помощью Node.js. Кроме того, вы узнали, как программно конвертировать ряд страниц из DOCX в PDF. Кроме того, вы узнали, как добавить водяной знак в преобразованный PDF-документ. В этой статье также объясняется, как программно загрузить файл DOCX в облако, а затем загрузить преобразованный файл PDF из облака. Вы можете узнать больше о GroupDocs.Conversion Cloud API, используя документацию. Мы также предоставляем раздел Справочник по API, который позволяет визуализировать наши API и взаимодействовать с ними непосредственно через браузер. В случае возникновения каких-либо неясностей, пожалуйста, свяжитесь с нами на форуме.