#python-3.x #pywin32
#python-3.x #pywin32
Вопрос:
Я написал небольшой скрипт для открытия файла powerpoint, сохранения его в формате PDF и закрытия powerpoint. Похоже, что команда ppSaveAsPDF не распознается.
В нем говорится NameError: name 'ppSaveAsPDF' is not defined
Может кто-нибудь, пожалуйста, сказать мне, почему я не могу сохранить файл в формате pdf и закрыть приложение?
Более того, когда я удаляю команду ppSaveAsPDF, она сохраняет PDF-файл, но он поврежден, и я не могу его открыть.
Я включил свой код ниже:
import win32com.client, sys
FILENAME = "C:\Users\Swaroop\Desktop\Scripts\Test.pptx"
APPLICATION = win32com.client.Dispatch("PowerPoint.Application")
PRESENTATION = APPLICATION.Presentations.Open(FILENAME, ReadOnly= False)
PRESENTATION.SaveAs("C:\Users\Swaroop\Desktop\Output.pdf", ppSaveAsPDF)
APPLICATION.Quit()
Ответ №1:
Я придумал обходной путь для этого, вместо использования ppSaveAsPDF я использую его постоянное значение, равное «32», и установка для ПРЕЗЕНТАЦИИ и ПРИЛОЖЕНИЯ значения NONE фактически закрывает powerpoint. Вот обновленный код.
import win32com.client, sys
FILENAME = "C:\Users\Swaroop\Desktop\Scripts\Test.pptx"
APPLICATION = win32com.client.Dispatch("PowerPoint.Application")
PRESENTATION = APPLICATION.Presentations.Open(FILENAME, ReadOnly= False)
PRESENTATION.SaveAs("C:\Users\Swaroop\Desktop\Output.pdf", 32)
APPLICATION.Quit()
PRESENTATION = None
APPLICATION = None