作者always821208 (!是驚嘆號)
看板PHP
標題[請益] 關於PPT投影片轉成PNG圖片的問題
時間Sun Oct 26 01:44:58 2014
因老師課程需要,希望我們能將PPT讓他可以在網頁上可以上下頁
因為還必須記錄當前頁數,本想用GOOGLE API 但是因為會跑板而且連線較慢
所以我和同學採用上傳自動將PPT轉成PNG的方式來進行
原本使用COM來寫,但是轉到另一個系統後突然失效...
而且使用COM的方式SERVER端使用者(原本的server2003不用)必須登錄才行
$app = new COM("PowerPoint.Application") or die("Unable to instantiate
PowerPoint");
$app->Visible = true;
//$pptpath="C:\\wamp\\www\\Temp\\3648\/03Group1.ppt";
$app->Presentations->Open($pptpath);
$app->Presentations[1]->SaveAs($imgfolder,18);
$app->Presentations[1]->Close();
$app->Quit();
$app = null;
$FileDir=$imgfolder;
$FileNum=count(glob("$FileDir/*.*"));
echo "<br>總共有".($FileNum-1)."張投影片";
程式碼大概長這樣子
想請問各位前輩是如果可以的話,我該使用什麼方法來達成這目標呢?
因為老師還有上下題的功能需要使用,所以我必須計算頁數...
目前是打算往執行python腳本來走 試試看
謝謝大家
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 218.173.70.240
※ 文章網址: http://webptt.com/m.aspx?n=bbs/PHP/M.1414259101.A.867.html
1F:推 shadowjohn: 第一步 ppt -> pdf 10/27 01:23
2F:→ shadowjohn: 然後 10/27 01:23
5F:推 shadowjohn: 總之就是裝imagemagick、ghostscripts 10/27 01:37
6F:→ shadowjohn: 之後下指令就可以把pdf->png,而且不會跑頁 10/27 01:37
7F:→ MOONRAKER: ghostscript真是printing sol'n的救星 10/27 02:12
8F:推 shadowjohn: 檔案擺著,分享一個link不就好了... 10/27 13:07
9F:→ shadowjohn: 傳錯>_< 10/27 13:08
10F:→ always821208: 謝謝大家!我會先試試看的 10/27 20:50
11F:→ always821208: 可以稍微請問一下PPT有什麼好方法轉PDF嗎 ? 10/27 20:51
12F:→ always821208: 之前也有想過這個方法,可是找到的工具都要錢.... 10/27 20:51
13F:→ always821208: 可能也要轉pptx檔案..有用LibreOffice但是還是失敗 10/27 21:02
14F:→ shadowjohn: 呃,新版的office不是另存新檔就有pdf選項了 10/27 22:22
15F:→ shadowjohn: libreoffice 轉pdf有什麼問題嗎 :D 10/27 22:23
16F:→ mmis1000: office系列如果沒有另存pdf選項,我真的不知道該怎麼用 10/27 23:10
18F:→ shadowjohn: windows用法差不多~ 10/28 01:37
19F:→ always821208: 抱歉各位,老師是希望他上傳PPT的時候可以轉成PNG 10/28 04:46
20F:→ always821208: 而我也知道可以右鍵另存PDF QAQ 只是想幫助老師解決 10/28 04:47
21F:→ always821208: 這方面的問題,因為想說寫程式是要配合使用者 10/28 04:47
22F:→ always821208: 如果要他改變的話一次會改變到很多學生... 10/28 04:47
23F:→ always821208: 所以是希望可以使用php的code來達成這目標 10/28 04:48
24F:→ always821208: 之前有成功過,但是轉到刀鋒伺服器上就不行了... 10/28 04:48
25F:→ always821208: 真的滿匪夷所思的@_@之前會自動跑出Powerpoint.EXE 10/28 04:49
26F:→ always821208: 現在都變成Uncaught exception 'com_exception' wit 10/28 04:50
27F:→ always821208: th message 'Source: Microsoft Office PowerPoint 10/28 04:51
28F:推 shadowjohn: 你的刀鋒大概沒裝 office... 或 com 元件 10/28 11:08
29F:→ always821208: 有裝了....但是依然無法,去COM也有看到@@ 10/28 11:35
30F:→ shadowjohn: 不然你先裝 libreoffice 10/28 11:46
31F:→ shadowjohn: 然後用外部指令 10/28 11:46
32F:→ shadowjohn: libreoffice -v --headless --convert-to pdf a.ppt 10/28 11:46
33F:推 shadowjohn: windows應該是 soffice --headless --conv.... 10/28 13:05
34F:→ shadowjohn: 在program files(x86)\libreoffice \program 裡 10/28 13:05
35F:→ always821208: 好的,謝謝你,我回機房馬上試試看 10/28 13:07
36F:→ always821208: 無法QQ,只能手動才能出來,而且會跑版QAQ 10/29 09:41