Преобразование документов Word в PDF с помощью REST API в Python.

Совместное использование документов Word в формате PDF является обычной практикой, поскольку PDF является широко используемым форматом для обмена документами в отрасли. Вы можете легко преобразовать Word в PDF, используя встроенные функции Microsoft Office, но вам может потребоваться программно преобразовать документы Word (DOC или DOCX) в PDF. В этой статье вы узнаете, как конвертировать документы Word в PDF с помощью REST API в Python.

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

Преобразование Word в PDF REST API и Python SDK

Для преобразования DOCX в PDF мы будем использовать API Python SDK of GroupDocs.Conversion Cloud. Это независимое от платформы решение для преобразования документов/изображений, которое не зависит от какого-либо инструмента или программного обеспечения. Он позволяет быстро и надежно конвертировать изображения и документы любого поддерживаемого формата файлов в любой нужный вам формат.

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

pip install groupdocs_conversion_cloud

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

client_id = "659fe7da-715b-4744-a0f7-cf469a392b73"
client_secret = "b377c36cfa28fa69960ebac6b6e36421"

configuration = groupdocs_conversion_cloud.Configuration(client_id, client_secret)
configuration.api_base_url = "https://api.groupdocs.cloud"
my_storage = ""

Преобразование документов Word в PDF с помощью REST API в Python

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

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

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

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

# Создать экземпляр API
file_api = groupdocs_conversion_cloud.FileApi.from_config(configuration)

# запрос на загрузку файла
request = groupdocs_conversion_cloud.UploadFileRequest("sample.docx", "C:\\Files\\Conversion\\sample.docx", my_storage)

# загрузить образец файла
response = file_api.upload_file(request)

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

Преобразование DOCX в PDF с помощью Python

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

  • Во-первых, создайте экземпляр ConvertApi.
  • Теперь создайте экземпляр ConvertSettings.
  • Затем укажите путь к входному файлу DOCX.
  • Установите формат «pdf».
  • Укажите путь к выходному файлу.
  • Теперь создайте ConvertDocumentRequest с ConvertSettings.
  • Наконец, преобразуйте DOCX, вызвав метод convert\document() с ConvertDocumentRequest.

В следующем примере кода показано, как преобразовать DOCX в PDF с помощью REST API в Python.

# Создайте экземпляр API
convert_api = groupdocs_conversion_cloud.ConvertApi.from_keys(client_id, client_secret)

# Определить настройки преобразования
settings = groupdocs_conversion_cloud.ConvertSettings()
settings.file_path = "sample.docx"
settings.format = "pdf"
settings.output_path = "converted"

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

# Конвертировать документ
result = convert_api.convert_document(request)

# Сделанный
print("Document converted: " + result[0].path)
Преобразование документов Word в PDF с помощью REST API в Python

Преобразование документов Word в PDF с помощью REST API в Python.

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

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

# Инициализация API
file_api = groupdocs_conversion_cloud.FileApi.from_config(configuration)

# Создать запрос на скачивание файла
request = groupdocs_conversion_cloud.DownloadFileRequest("converted\\sample.pdf", my_storage)

# Загрузить файл
response = file_api.download_file(request)

# Переместите загруженный файл в свой рабочий каталог
shutil.move(response, "C:\\Files\\Conversion\\")

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

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

  • Во-первых, создайте экземпляр ConvertApi.
  • Теперь создайте экземпляр ConvertSettings.
  • Затем укажите путь к файлу DOCX.
  • Установите «pdf» в качестве формата.
  • Укажите путь к выходному файлу.
  • Теперь создайте экземпляр DocxLoadOptions.
  • При желании установите различные параметры загрузки, такие как скрыть\комментарии, скрыть\слово\отслеживаемые\изменения и т. д.
  • Теперь создайте экземпляр PdfConvertOptions.
  • Затем установите различные параметры преобразования, такие как отображение\документ\заголовок, поля (верхнее, левое, правое, нижнее) и т. д.
  • Теперь создайте ConvertDocumentRequest с помощью ConvertSettings.
  • Наконец, преобразуйте DOCX, вызвав метод convert\document() с ConvertDocumentRequest.

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

# Создайте экземпляр API
convert_api = groupdocs_conversion_cloud.ConvertApi.from_keys(client_id, client_secret)

# Определить настройки преобразования
settings = groupdocs_conversion_cloud.ConvertSettings()
settings.file_path = "sample.docx"
settings.format = "pdf"
settings.output_path = "converted"

# Параметры загрузки DOCX
loadOptions = groupdocs_conversion_cloud.DocxLoadOptions()
loadOptions.hide_comments = True              # Hide comments
loadOptions.hide_word_tracked_changes = True  # Hide tracked changes

# Варианты преобразования PDF
convertOptions = groupdocs_conversion_cloud.PdfConvertOptions()
convertOptions.center_window = True
convertOptions.compress_images = False
convertOptions.display_doc_title = True
convertOptions.dpi = 1024.0
convertOptions.fit_window = False
convertOptions.from_page = 1
convertOptions.grayscale = False
convertOptions.image_quality = 100
convertOptions.linearize = False
convertOptions.margin_top = 5
convertOptions.margin_left = 5
convertOptions.unembed_fonts = True
convertOptions.remove_unused_streams = True
convertOptions.remove_unused_objects = True
convertOptions.remove_pdfa_compliance = False

settings.convert_options = convertOptions

# Преобразовать запрос документа
request = groupdocs_conversion_cloud.ConvertDocumentRequest(settings)

# Конвертировать документ
result = convert_api.convert_document(request)

# Сделанный
print("Document converted: " + result[0].path)

Преобразование диапазона страниц из DOCX в PDF в Python

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

  • Во-первых, создайте экземпляр ConvertApi
  • Теперь создайте экземпляр ConvertSettings
  • Затем укажите путь к входному файлу DOCX.
  • Назначьте «pdf» формату
  • Укажите путь к выходному файлу
  • Теперь создайте экземпляр PdfConvertOptions.
  • Затем укажите диапазон страниц для преобразования, начиная с номера начальной страницы и заканчивая общим количеством страниц для преобразования.
  • Теперь назначьте PdfConvertOptions для ConvertSettings.
  • Затем создайте ConvertDocumentRequest с помощью ConvertSettings.
  • Наконец, конвертируйте, вызвав метод convert\document() с ConvertDocumentRequest.

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

# Создать экземпляр API
convert_api = groupdocs_conversion_cloud.ConvertApi.from_keys(client_id, client_secret)

# Определить настройки преобразования
settings = groupdocs_conversion_cloud.ConvertSettings()
settings.file_path = "sample.docx"
settings.format = "pdf"
settings.output_path = "converted"

# Варианты преобразования PDF
convertOptions = groupdocs_conversion_cloud.PdfConvertOptions()
convertOptions.from_page = 1;    # start page number
convertOptions.pages_count = 2;  # total pages to convert

settings.convert_options = convertOptions

# Преобразовать запрос документа
request = groupdocs_conversion_cloud.ConvertDocumentRequest(settings)

# Конвертировать документ
result = convert_api.convert_document(request)

# Сделанный
print("Document converted: " + result[0].path)

Преобразование определенных страниц DOCX в PDF в Python

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

  • Во-первых, создайте экземпляр ConvertApi
  • Теперь создайте экземпляр ConvertSettings
  • Затем укажите путь к входному файлу DOCX.
  • Назначьте «pdf» формату
  • Укажите путь к выходному файлу
  • Теперь создайте экземпляр PdfConvertOptions.
  • Затем укажите конкретные номера страниц в массиве, разделенном запятыми, для преобразования
  • Теперь назначьте PdfConvertOptions для ConvertSettings.
  • Затем создайте ConvertDocumentRequest с помощью ConvertSettings.
  • Наконец, конвертируйте, вызвав метод convert\cocument() с ConvertDocumentRequest.

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

# Создать экземпляр API
convert_api = groupdocs_conversion_cloud.ConvertApi.from_keys(client_id, client_secret)

# Определить настройки преобразования
settings = groupdocs_conversion_cloud.ConvertSettings()
settings.file_path = "sample.docx"
settings.format = "pdf"
settings.output_path = "converted"

# Варианты преобразования PDF
convertOptions = groupdocs_conversion_cloud.PdfConvertOptions()
convertOptions.pages = [1,2];  # page numbers to convert

settings.convert_options = convertOptions

# Преобразовать запрос документа
request = groupdocs_conversion_cloud.ConvertDocumentRequest(settings)

# Конвертировать документ
result = convert_api.convert_document(request)

# Сделанный
print("Document converted: " + result[0].path)

Преобразование Word в PDF с водяным знаком с использованием Python

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

  • Во-первых, создайте экземпляр ConvertApi
  • Теперь создайте экземпляр ConvertSettings
  • Затем укажите путь к входному файлу DOCX.
  • Назначьте «pdf» формату
  • Укажите путь к выходному файлу
  • Теперь создайте экземпляр WatermarkOptions.
  • Затем установите текст водяного знака, цвет, ширину, высоту, левый, верхний и т. д.
  • Теперь определите PdfConvertOptions и назначьте WatermarkOptions.
  • Теперь создайте ConvertDocumentRequest с помощью ConvertSettings.
  • Наконец, преобразуйте DOCX, вызвав метод convert\document() с ConvertDocumentRequest.

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

# Инициализация API
convert_api = groupdocs_conversion_cloud.ConvertApi.from_keys(client_id, client_secret)

# Определить настройки преобразования
settings = groupdocs_conversion_cloud.ConvertSettings()
settings.file_path = "sample.docx"
settings.format = "pdf"
settings.output_path = "converted"

# Определить параметры водяного знака
watermark = groupdocs_conversion_cloud.WatermarkOptions()
watermark.text = "THIS IS SAMPLE WATERMARK"
watermark.bold = True;
watermark.font_size = 34;
watermark.color = "Gray";
watermark.background = False;
watermark.rotation_angle = 30;
watermark.left = 90;
watermark.top = 500;

# Определить параметры преобразования PDF
convertOptions = groupdocs_conversion_cloud.PdfConvertOptions()
convertOptions.watermark_options = watermark

settings.convert_options = convertOptions

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

# Конвертировать документ
result = convert_api.convert_document(request)
print("Document converted successfully: " + result[0].url)
Преобразование Word в PDF с водяным знаком с использованием Python.

Преобразование Word в PDF с водяным знаком с использованием Python.

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

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

  • Во-первых, создайте экземпляр ConvertApi
  • Чтение входного файла DOCX из локального пути
  • Теперь создайте ConvertDocumentDirectRequest.
  • Затем укажите целевой формат «pdf» и путь к входному файлу в качестве входных параметров.
  • Получите результаты, вызвав метод convert\document\direct() с ConvertDocumentDirectRequest.
  • Наконец, сохраните выходной файл по локальному пути, используя метод FileStream.writeFile().

В следующем примере кода показано, как преобразовать документ Word в PDF без использования облачного хранилища.

# Создать экземпляр API
convert_api = groupdocs_conversion_cloud.КонвертироватьApi.from_keys(client_id, client_secret)

# Создать запрос на конвертацию
request = groupdocs_conversion_cloud.КонвертироватьDocumentDirectRequest("pdf", "C:\\Files\\Conversion\\sample.docx")

# Конвертировать
result = convert_api.convert_document_direct(request)

# Переместите загруженный файл в свой рабочий каталог
shutil.move(result, "C:\\Files\\Conversion\\")

Преобразование DOCX в PDF и загрузка напрямую

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

  • Во-первых, создайте экземпляр ConvertApi
  • Теперь создайте экземпляр ConvertSettings
  • Затем укажите путь к файлу DOCX.
  • Назначьте «pdf» формату
  • Установите «Нет» в выходной путь
  • Теперь создайте ConvertDocumentRequest с помощью ConvertSettings.
  • Затем получите результаты, вызвав метод convert\document\download().
  • При желании сохраните выходной файл по локальному пути, используя метод Shutil.move()

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

# Создайте необходимые экземпляры API
convert_api = groupdocs_conversion_cloud.КонвертироватьApi.from_keys(client_id, client_secret)

# Определить настройки преобразования
settings = groupdocs_conversion_cloud.КонвертироватьSettings()
settings.file_path = "sample.docx"
settings.format = "pdf"

settings.output_path = None    # leave OutputPath will result the output as document IOStream

# Создать запрос на конвертацию
request = groupdocs_conversion_cloud.КонвертироватьDocumentRequest(settings)

# Конвертировать
response = convert_api.convert_document_download(request)

# Переместите загруженный файл в свой рабочий каталог
shutil.move(response, "C:\\Files\\Conversion\\")

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

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

Заключение

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

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