Конвертация PowerPoint в PDF на Python

Обзор

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

Конвертации PowerPoint в PDF

С помощью Aspose.Slides вы можете конвертировать презентации в следующих форматах в PDF:

  • PPT
  • PPTX
  • ODP

Чтобы конвертировать презентацию в PDF на Python, вам просто нужно передать имя файла как аргумент в классе Presentation и затем сохранить презентацию как PDF, используя метод Save. Класс Presentation предоставляет метод Save, который обычно используется для конвертации презентации в PDF.

Aspose.Slides позволяет вам конвертировать:

  • всю презентацию в PDF
  • определенные слайды в презентации в PDF
  • презентацию

Aspose.Slides экспортирует презентации в PDF таким образом, что содержимое полученных PDF-документов очень похоже на содержимое оригинальных презентаций. Эти известные элементы и атрибуты часто правильно отображаются при конвертации презентации в PDF:

  • изображения
  • текстовые поля и другие фигуры
  • тексты и их форматирование
  • абзацы и их форматирование
  • гиперссылки
  • колонтитулы
  • маркеры
  • таблицы

Конвертировать PowerPoint в PDF

Стандартная операция конвертации PowerPoint в PDF выполняется с использованием параметров по умолчанию. В этом случае Aspose.Slides пытается конвертировать предоставленную презентацию в PDF, используя оптимальные настройки на максимальных уровнях качества. Этот код на Python показывает, как конвертировать PowerPoint в PDF:

Шаги: Конвертация PowerPoint в PDF на Python

Следующий пример кода объясняет эти конвертации с помощью Python через .NET

Шаги кода:

  • Создайте экземпляр класса Presentation и предоставьте ему файл PowerPoint.
    • .ppt расширение для загрузки PPT файла в класс Presentation.
    • .pptx расширение для загрузки PPTX файла в класс Presentation.
    • .odp расширение для загрузки ODP файла в класс Presentation.
    • .pps расширение для загрузки PPS файла в класс Presentation.
  • Сохраните Presentation в формате PDF, вызвав метод Save и использовав перечисление SaveFormat.PDF.
import aspose.slides as slides

# Создает экземпляр класса Presentation, представляющий файл PowerPoint
presentation = slides.Presentation("PowerPoint.ppt")

# Сохраняет презентацию как PDF
presentation.save("PPT-to-PDF.pdf", slides.export.SaveFormat.PDF)

Конвертировать PowerPoint в PDF с параметрами

Aspose.Slides предлагает настраиваемые опции — свойства класса PdfOptions, которые позволяют вам настроить PDF (результат процесса конвертации), защитить PDF паролем или даже определить, как должен проходить процесс конвертации.

Конвертация PowerPoint в PDF с настраиваемыми параметрами

Используя настраиваемые параметры конвертации, вы можете установить предпочтительное качество для растровых изображений, определить, как должны обрабатываться метафайлы, установить уровень сжатия для текста, установить DPI для изображений и т. д.

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

import aspose.slides as slides

# Создает экземпляр класса PdfOptions
pdf_options = slides.export.PdfOptions()

# Устанавливает качество для JPG изображений
pdf_options.jpeg_quality = 90

# Устанавливает DPI для изображений
pdf_options.sufficient_resolution = 300

# Устанавливает поведение для метафайлов
pdf_options.save_metafiles_as_png = True

# Устанавливает уровень сжатия текста для текстового содержания
pdf_options.text_compression = slides.export.PdfTextCompression.FLATE

# Определяет режим соблюдения PDF
pdf_options.compliance = slides.export.PdfCompliance.PDF15

# Создает экземпляр класса Presentation, представляющий документ PowerPoint
with slides.Presentation("PowerPoint.pptx") as presentation:
    # Сохраняет презентацию как PDF-документ
    presentation.save("PowerPoint-to-PDF.pdf", slides.export.SaveFormat.PDF, pdf_options)

Конвертировать PowerPoint с скрытыми слайдами в PDF

Если презентация содержит скрытые слайды, вы можете использовать настраиваемый параметр — свойство show_hidden_slides класса PdfOptions, чтобы указать Aspose.Slides включить скрытые слайды как страницы в результирующем PDF.

Этот код на Python показывает, как конвертировать PowerPoint-презентацию в PDF с включенными скрытыми слайдами:

import aspose.slides as slides

# Создает экземпляр класса Presentation, представляющий файл PowerPoint
presentation = slides.Presentation("PowerPoint.pptx")

# Создает экземпляр класса PdfOptions
pdfOptions = slides.export.PdfOptions()

# Включает скрытые слайды
pdfOptions.show_hidden_slides = True

# Сохраняет презентацию как PDF
presentation.save("PowerPoint-to-PDF.pdf", slides.export.SaveFormat.PDF, pdfOptions)

Конвертировать PowerPoint в защищенный паролем PDF

Этот код на Python показывает, как конвертировать PowerPoint в PDF, защищенный паролем (с использованием параметров защиты из класса PdfOptions):

import aspose.slides as slides

# Создает экземпляр класса Presentation, представляющий файл PowerPoint
presentation = slides.Presentation("PowerPoint.pptx")

# Создает экземпляр класса PdfOptions
pdfOptions = slides.export.PdfOptions()

# Устанавливает пароль PDF и разрешения доступа
pdfOptions.password = "password"
pdfOptions.access_permissions = slides.export.PdfAccessPermissions.PRINT_DOCUMENT | slides.export.PdfAccessPermissions.HIGH_QUALITY_PRINT

# Сохраняет презентацию как PDF
presentation.save("PPTX-to-PDF.pdf", slides.export.SaveFormat.PDF, pdfOptions)

Обнаружение замен шрифтов

Aspose.Slides предоставляет свойство warning_callback в классе SaveOptions, чтобы вы могли обнаружить замены шрифтов в процессе конвертации презентации в PDF.

Этот код на Python показывает, как обнаружить замены шрифтов:

[TODO[SLIDESPYNET-91]: обратные вызовы пока не поддерживаются]

Конвертировать выбранные слайды PowerPoint в PDF

Этот код на Python показывает, как конвертировать конкретные слайды в PowerPoint-презентации в PDF:

import aspose.slides as slides

# Создает экземпляр класса Presentation, представляющий файл PowerPoint
presentation = slides.Presentation("PowerPoint.pptx")

# Устанавливает массив позиций слайдов
slides_array = [ 1, 3 ]

# Сохраняет презентацию как PDF
presentation.save("PPTX-to-PDF.pdf", slides_array, slides.export.SaveFormat.PDF)

Конвертировать PowerPoint в PDF с настраиваемым размером слайда

Этот код на Python показывает, как конвертировать PowerPoint, когда размер его слайдов указан, в PDF:

import aspose.slides as slides

# Создает экземпляр класса Presentation, представляющий файл PowerPoint 
presentation = slides.Presentation("SelectedSlides.pptx")
auxPresentation = slides.Presentation()

slide = presentation.slides[0]

auxPresentation.slides.insert_clone(0, slide)

# Устанавливает тип и размер слайда 
auxPresentation.slide_size.set_size(612, 792, slides.SlideSizeScaleType.ENSURE_FIT)

pdfOptions = slides.export.PdfOptions()
pdfOptions.notes_comments_layouting.notes_position = slides.export.NotesPositions.BOTTOM_FULL

auxPresentation.save("PDFnotes_out.pdf", slides.export.SaveFormat.PDF, pdfOptions)

Конвертировать PowerPoint в PDF в виде заметок слайдов

Этот код на Python показывает, как конвертировать PowerPoint в PDF с заметками:

import aspose.slides as slides

# Создает экземпляр класса Presentation, представляющий файл PowerPoint
presentation = slides.Presentation("NotesFile.pptx")

pdfOptions = slides.export.PdfOptions()
pdfOptions.notes_comments_layouting.notes_position = slides.export.NotesPositions.BOTTOM_FULL

# Сохраняет презентацию в PDF с заметками
presentation.Save("Pdf_Notes_out.tiff", slides.export.SaveFormat.PDF, pdfOptions)

Стандарты доступности и соблюдения для PDF

Aspose.Slides позволяет вам использовать процедуру конвертации, которая соответствует Руководящим принципам доступности веб-контента (WCAG). Вы можете экспортировать документ PowerPoint в PDF, используя любые из этих стандартов соблюдения: PDF/A1a, PDF/A1b и PDF/UA.

Этот код на Python демонстрирует операцию конвертации PowerPoint в PDF, в которой получены несколько PDF-документов на основе различных стандартов соблюдения:

import aspose.slides as slides

pres = slides.Presentation("pres.pptx")

options = slides.export.PdfOptions()

options.compliance = slides.export.PdfCompliance.PDF_A1A
pres.save("pres-a1a-compliance.pdf", slides.export.SaveFormat.PDF, options)

options.compliance = slides.export.PdfCompliance.PDF_A1B
pres.save("pres-a1b-compliance.pdf", slides.export.SaveFormat.PDF, options)

options.compliance = slides.export.PdfCompliance.PDF_UA
pres.save("pres-ua-compliance.pdf", slides.export.SaveFormat.PDF, options)