スクリプトにパワーポイントファイルをロードさせ、スライドを自動的に進めて全画面表示にする方法を考えていました。Windowsにそれを行わせる方法はありますか?powerpoint.exeをロードし、ある種のAPI/パイプを使用して別のスクリプトからコマンドを提供することはできますか。
ケースを作るために:私はWindowsのフォルダを自動的にスキャンし(Pythonを使用して)、PowerPointプレゼンテーションをロードし、それらを順番に再生し続けるスクリプトを作成しています。
スクリプトにパワーポイントファイルをロードさせ、スライドを自動的に進めて全画面表示にする方法を考えていました。Windowsにそれを行わせる方法はありますか?powerpoint.exeをロードし、ある種のAPI/パイプを使用して別のスクリプトからコマンドを提供することはできますか。
ケースを作るために:私はWindowsのフォルダを自動的にスキャンし(Pythonを使用して)、PowerPointプレゼンテーションをロードし、それらを順番に再生し続けるスクリプトを作成しています。
解決策の1つは、代わりにPowerPointViewerプログラムを使用することです。PPTビューアは、プレゼンテーションモードですぐにPowerPointファイルを開くように設定されています。
または、引数/sを使用してPowerpointを起動することもできます。
"powerpoint.exe /s <filename>.ppt"
これは、PowerPointにプレゼンテーションモードですぐに開くように指示するのと同じです。
前に述べたように、これはよりStackOverflowに対応していますが、これはPythonとAutoHotkeyを使用して簡単に実現できます。
Python側では、これをどのように行うかについての一般的な考え方として(私はちょっと錆びているので、注意してください!):
os.walk()
os.system("powerpoint.exe /s filename")
。次のものは、前のものが閉じるまで開かないでください。AutoHotkeyの賢明さ:
「順序」の意味がわかりません。Pythonスクリプトでそれを判別する必要があります。アルファベット順にしたい場合は、リストをアルファベット順に並べ替えてから繰り返します。作成日で並べ替える場合は、日付で並べ替えて繰り返します。
パワーポイントのスライドをより細かく制御したい場合は、この MS サポート記事に従って、VB.Net (または他の .Net 言語) で何かを書くことができます。
Python から直接制御したい場合は、pywin32またはcomtypesを使用して、MS の記事で説明されているのと同じインターフェイスを直接呼び出すことができます。私の推測では、これが最も強力なソリューションであり、おそらくプレゼンテーション間の移行が最もスムーズになるでしょうが、サブプロセスを使用して PowerPoint を呼び出すよりも多くの作業が必要になるでしょう。