在使用 FileLocator (使用 FileLocator 在資料夾中搜尋文件內容) 時發現在 pdf 中找會比 pptx 準確。換句話說,有些關鍵字在 pptx 中找不到的,把 pptx 匯成 pdf 後就可以被找到。為了不要手動一個一個匯出,我們就需要一個可以大量轉換的工具。
windows 腳本
我從 references 第一篇找到轉換腳本,微調需要手動設定路徑部分改成以目前路徑為輸入。原本 ppt2pdf.bat 有點問題無法執行也根據 references 第二篇修復了。
在目標資料夾中新增兩個檔案: ppt2pdf.bat、run.bat
@if (@X)==(@Y) @end /* JScript comment
@echo off
cscript //E:JScript //nologo "%~f0" %*
exit /b %errorlevel%
@if (@X)==(@Y) @end JScript comment */
var source=WScript.Arguments.Item(0);
var target=WScript.Arguments.Item(1);
var PP;
//https://stackoverflow.com/q/65923669
PP = new ActiveXObject("PowerPoint.Application");
PP.Visible = true;
PRSNT = PP.Presentations.Open(source,0,0,0);
//https://msdn.microsoft.com/en-us/vba/powerpoint-vba/articles/ppsaveasfiletype-enumeration-powerpoint
PRSNT.SaveAs(target,32);
PRSNT.Close();
PP.Quit();
PP = null;
::source: https://stackoverflow.com/a/45349987
@echo off
set ppt_dir=%CD%
set output_dir=%CD%
for %%a in ("%ppt_dir%\*.ppt") do (
echo "Convert %%~nxa to %%~na.pdf"
call "ppt2pdf.bat" "%%~fa" "%output_dir%\%%~na.pdf"
)
接著點兩下 run.bat 執行即可。過程中有問題直接在 cmd 視窗按下 Crtl-Pause 即可結束進行到一伴的轉換。