2008年11月11日 星期二

PowerPoint 瘦身 ---- 找出龐大的 OLE

image之前對 PowerPoint 檔案進行瘦身, 都是以『壓縮圖片』為主。
今天根據網路上看到的靈感又多創了一招『找出龐大的 OLE 』的方法。

.

PowerPoint 瘦身概論

一般而言, 要對 PowerPoint 檔案瘦身, 主要就是下面幾招:

1. 關閉快速儲存
2. 壓縮圖片
3. 不要內嵌TrueType字型
4. 減少使用 OLE 物件

其中 1. 和 2. 是我原先就知道的, 而且最近的使用經驗也確認 PowerPoint 2007 預設已包含前兩項的最佳化, 不需要再特別處理

今天又遇到 PowerPoint 檔案太胖的問題。請教 Google『PowerPoint 瘦身』得知有幾個程式可以試用, 但因為是付費軟體, 所以並沒有嘗試。

倒是其中的『阿德觀點』提到了一個我原先不知道的招式 ---- "另存成網頁"

阿德觀點: 超大的PowerPoint 檔 (2005-01-13)
PointPower "另存成網頁" ... 可以看到 ... 所有圖檔
... 有一個 oledata.mso 檔案竟然有 160 多 MB, 看來兇手就是它了.
... 把 oledata.mso 給刪了吧!
... 同事給我的簡報 "剛好" 可以進行這樣的處理, 沒問題, 但不見得適合所有的簡報

還有 "另存成網頁" 的 動畫教學 ---- 阿德觀點: PowerPoint 瘦身 (2005-05-04)

此外, 還有一篇 阿德觀點: 縮小您的PowerPoint 檔案 (2005-04-30) 提到的微軟說明文件, 也都是很好的參考資料

.

找出龐大的 OLE

根據我自己有限的測試, 阿德提到的『另存成網頁』的方法有下面的限制

  • 『另存成網頁』再回存成 *.ppt 檔, 可能會遺失某些格式或資料。例如文字和表格的顏色變了...
  • PowerPoint 2007 預設在存檔前壓縮圖片, 而 PowerPoint 2003 則可以手動『壓縮所有圖片』, 所以除非要進一步犧牲圖片品質, 否則『另存成網頁』再壓縮的大小恐怕有限
  • 對 oledata.mso 只能整個刪除, 不見得適用所有場合

所以, 我改良的方式是

  • 利用『另存成網頁』找出龐大的資料, 可能是圖片或 OLE
  • 回到原先的 *.ppt 檔, 直接處理這些龐大的圖片或 OLE, (而不是『另存成網頁』再回存成 *.ppt 檔)

說起來簡單, 可是『過程有點曲折』:

  • 『另存成網頁』找出龐大的是圖片還是 OLE
  • 如果是 OLE, 可以用 7-Zip 看 oledata.mso 所含的物件數目和大小 ---- 非必要
  • 搜尋內容包含 oledata 的*.htm 檔案
  • 反查 slide????.htm 的投影片頁碼
  • 回到原先的 *.ppt 檔, 『選擇性貼上』調整成非 OLE 物件

詳見以下的說明 :

  • 2008-11-11_162757 因為 PowerPoint 2007 預設已包含前兩項最佳化, 所以『另存成網頁』看到的圖片大小都還算合理, 倒是真的有一個 幾 MB 的 oledata.mso
  • image網路上找不到處理 oledata.mso 的方法, 不過發現
    7-Zip 可以開啟 oledata.mso, 由此知道裡面有四個 OLE 物件, 其中有三個佔了 660KB ~ 1.5MB 不等
  • OLE 名稱的數字 (22, 37, 40 ...) 不知道代表什麼, 既不是投影片頁碼, 也不是下面提到的 slide????
  • 有興趣的人, 可以試著用 7-Zip 清掉一些 OLE, 再回存成 *.ppt 看會怎麼樣
    (我沒試過)
  • 2008-11-11_114702 在『另存成網頁』的目錄下, 搜尋內容包含 oledata 的*.htm 檔案
  • 記下其中名為 slide????.htm 的檔案 (例如: 我找到的是slide0032.htm, 0037, 0069, 0070)search-1
這邊的 slide0032 指的並不是 *.ppt 中的投影片頁碼, 所以還要再用下面幾個方法 反查真正的投影片頁碼:
  • 查看相關的圖檔, 例如 slide0032_image046.gif, 可以知道是哪一頁的圖
  • 直接用 IE 開啟 slide0032.htm 可以看到是哪一頁
  • 查看 slide0032.htm 的原始碼, 從裡面找線索
  • OLE1知道是哪一頁之後, 應該就不難判斷是哪一個 OLE 物件太龐大, 像右圖那一個從 Excel 轉貼到 PowerPoint 的 圖表, 就佔了 660K
image
  • 『複製』或『剪下』OLE 物件
  • 『選擇性貼上』, 如果是圖表則選用 EMF, WMF, PNG, GIF 等, 如果是照片, 則選用 JPEG
  • 確認結果, (記得刪除原本的 OLE 物件), 看存檔的檔案是否變瘦了

.

感謝看完這麼曲折的 PowerPoint 瘦身方式, 到底划不划算, 就看你怎麼想囉 !!

2 意見:

發表您的回應
  1. Catherine Huang 提到...

    嗯,這篇教學好像有點晚看到...
    下次需要用到POWERPOINT會來實驗看看。
    不過,存成網頁再存回來,好像有這麼一點恐佈。
    萬一辛辛苦苦弄好的美美格式不見了。

    那好像會有點欲哭無淚。
    OLE的部分是真的可以參考...
    原來他會暫不小的空間啊~~

    謝謝分享。

  2. 水瓶尤加利 / Eucaly61 提到...

    PowerPoint 原有的『壓縮所有圖片』用來處理圖片應該就夠了。
    所以, 我覺得『存成網頁』比較像是『輔助』用來找到『大物件』的方法 (可能是圖片OLE,或其他)。這樣做就不用擔心『存成網頁再存回來』的可能風險了。

張貼留言