[Office] 2007 與 2003 以前的檔案可「再」壓縮性與信箱限制

話說,很多人發送 eMail 前習慣將檔案壓縮後再寄出。
今天在公司有人問我,為什麼 Word 2007 的檔案壓縮前後沒太大差異,但是 Word 2003 就會明顯變小?因為他要寄出一個將近 20 MB 的 Word 檔,對方的 eMail 限制單封信件上限不能超過 20 MB 。這種問題對於一般文書人員很難解釋,所以只能將就的說一說。
 
開發者多半都知道,Office 2007 的新檔案格式基本上都是一堆純文字檔再用 zip 封裝成看起來像是一個檔。不相信的人,可以把 .docx/.xlsx/.pptx 等副檔名改為 .zip ,再用 zip 軟體解壓縮,就可以看到所有的檔案了。
 
因此 Office 2007 的檔案格式本身已經是壓縮過的,再用 zip / rar 等軟體壓縮就沒什麼效果了。
而 Office 2003 的二進位檔案格式本身是比較疏鬆的,裡面有大量的 00 存在,所以可壓縮性就比較高,可以很明顯看到檔案減小。
 
另外要注意的是有些人檔案喜歡加密,通常加密過的檔案因為已經擾亂過,就會造成壓縮軟體無法明確壓縮,所以若需加密,最好是在壓縮軟體內設,而不要設在文件內,才可能盡量的提高可壓縮性,而 Office 2007 已經把壓縮整合了,就比較沒差。
 
而這個案例中,最後郵件還是寄不出去,Word 2007 的檔案大概是 17.6 MB ,WinRar 壓縮過後還有 17.2 MB ,透過郵件寄送附檔,看檔案編碼方式,比較穩定的是用 Base64 ,編碼過後會變成原先的 4/3 ,就變成 22.9 mb ,再加上信頭約 4kb 左右下,遠大於 20 MB 的限制。
 
而 MB 的計算也很亂,E/T/G/M/K 這種是工程單位,工程單位定義的很明確,每一級值相差 1,000 倍。
而資訊上來說,2 的 10 次方是 1,024 近似 1,000,所以在資訊上常用 1,024 代表一個級值單位,也就是說 1 MB 可能是 1,000,000 ,也可能是 1,048,576 ,甚至若是軟體是以 KB 為單位時,也有可能變成 1,024,000 ,因此到底單封郵件 20 MB 的上限是多少,就變成看對方 Mail Server 的設定與計算方式與資管人員的計算方式而定。
所以要保證對方能收到信,最好用最小的來算,所以 20 MB 用 20,000,000 當限制算是比較保險的,用 (20,000,000 – 4096 – 檔案數 * 512) * 0.75 是比較保險的,若是一個附件檔案,則在硬碟的大小應小於 14,996,544 才能確保一定會寄達。當然這串精確計算要有自己寫 MIME 的開發者會比較熟悉,其他人用這個公式概估就可以了。
廣告
Categories: Office | 發表留言

文章分頁導航

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

您的留言將使用 WordPress.com 帳號。 登出 / 變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 / 變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 / 變更 )

Google+ photo

您的留言將使用 Google+ 帳號。 登出 / 變更 )

連結到 %s

在WordPress.com寫網誌.

%d 位部落客按了讚: