iT邦幫忙

0

Word檔的Size

近日在不同的電腦上用不同版本Word對同一個docx檔做編輯
可是發現Word 2010儲存的檔案
硬是比Word 2013儲存的檔案大上20%左右?
明明可以互相讀取對方儲存的檔案
但是為何存檔時就有這種差異?
這是MS的利益考量才故意設計成這樣嗎?
不解

看更多先前的討論...收起先前的討論...
不用那麼多陰謀論嘛,既然都是XML格式的,其標記格式一定會有進步,內插圖片無損壓縮的技術也會進步,甚至很多常用的快速圖型也會有更加優化的向量表述方式,版本更新檔案更小那是可被預期的,誰今天會去想到三年後的事呢?今天做不好然後被其他品牌取代,那更陰謀吧
fillano iT邦超人 1 級 ‧ 2019-07-09 10:28:20 檢舉
docx是一個zip archive,你可以把他解開來比較看看到底什麼地方不一樣。如果想要知道文件格式的標準,可以參考ECMA-376的規格文件。
player iT邦大師 1 級 ‧ 2019-07-09 14:12:47 檢舉
先以同樣的內容分別存檔, 使用7zip解開(不用改副檔名)
然後比對資料夾(但是總Size相差不到1%?)
因為它的XML是UTF8編碼的, 所以用windiff比對資料夾會變亂碼
因此沒辦法一眼看出差異在哪裡
不過應該就跟你們說的那樣
差異大概是出在zip壓縮技術上吧
先就這樣了
其實我之前也曾經有跟你一樣的問題。也有特別去了解了一下。
不過那是很早的事就是了。大約找出幾個特殊的點可以給你參考。

1.編碼的不同。其區分了iso編碼跟utf8編碼的特性。基本iso編碼容量會比較大。

2.obj物件的再壓縮不同。這個可能要解釋一下。當時其實有故意在word上內置很多東西,包含了圖片、excel表跟外部連結物件。有發現到解開後的圖片檔,有些是有壓縮,有些沒有。但我後期沒研究出來原因。

3.有發現到就算存同一個版本,會莫明奇妙的有增加容量。
解開後的檔案長度也的確有增加。我是推測可能有修改或是版本的記錄之類的東西存在。不過這也是後續沒研究出來的東西。

因為當時研究這東西只是一時興趣而已。再加上原本是想要應用到網頁上的處理想要了解其特性。
但因後續有現成的套件可供利用。研究不研究就變得不是很重要。所以當時的研究很多都未得到答案。

1 個回答

1
浩瀚星空
iT邦超人 1 級 ‧ 2019-07-09 12:52:25
最佳解答

如 fillano 所說的,認真來說m$的文件檔幾乎是xml+zip處理的。
如果你真的想要了解的話。你可以故意將doc檔改副檔名為zip。
就可以做解壓縮的動作。解完後你會得到數個目錄跟幾個xml檔。

具我所了解的是,其實版本的容量壓縮比各版本用的技術並不相同。
所以才會覺得舊板本會比新版本的大。

你也可以用我上面的方式解開後,然後看差異在哪邊。

對了,忘了說。2003之前的版本並不完全是xml。所以無法用這招。
映像是2008之後才開始這樣做的。不過我並不太確定就是了。

小魚 iT邦大師 1 級 ‧ 2019-07-09 17:58:57 檢舉

2003之前的版本並不完全是xml

應該完全不是吧, 97~2003是一個版本

映像是2008之後才開始這樣做的

2007

不過Word我現在都還是用2003,
2007之後有個功能讓我又退回2003,
除非專案有需要我才會灌回2007,
反正Word升級跟降版不用幾分鐘.

小魚 iT邦大師 1 級 ‧ 2019-07-09 18:01:44 檢舉

另外圖片檔壓縮有可能是自己壓縮的,
如果是需要高解析度的我就不會壓縮,
如果不需要的話壓縮會省很多空間,
不過反正我硬碟夠大,
又沒什麼奇怪又容量大的資料在硬碟,
基本上不壓縮也沒關係.

在意的不是硬碟不夠放,而是傳檔給客戶業主傳不動,GMAIL、LINE都只能傳25MB,如果不想辦法壓縮圖片,恐怕同事傳不出去,罵的一定是MIS

我要發表回答

立即登入回答