下載網址:http://www.mediafire.com/file/4fvqb6jp2cfwkzl/table2html.htm
展示網址:http://terryhung.byethost3.com/html/table2html.htm

這個網頁程式是從大陸網友的作品直接翻譯而成的!
筆者以前的工作幾乎每天都要將 Word 或 Excel 的表格貼到網站後台的編輯器(像是 FCKeditor)進行編輯。
如果直接貼過去,檢視 html 原始檔時會發現多了很多不必要的垃圾代碼,
除了加重資料庫的負擔,另外也會使得網站設計者編寫的 CSS 失效!
例如:網站設計者使用新細明體 10 pt 的字型及字體,而 Word 原作者使用標楷體 14 pt 的字型及字體,
貼到網站後台的編輯器後,Word 原本的樣式很可能會被保留下來,
而造成在網站前台瀏覽頁面時,網頁內容區與非內容區二者變得格格不入、破壞美觀。

如果是不帶表格的文字資料(最多帶有不同顏色、粗體、斜體、底線等樣式),這還比較容易解決!
因為只要將這串文字資料先貼到「記事本」(Windows 的 Notepad)裡,就會直接去除樣式,
在「記事本」裡重新複製,貼到網頁編輯器裡,
最後再對需要指定顏色、粗體、斜體、底線的地方再重新編輯就可以了!
但是,對於帶有表格的文字資料,就必須有個轉換的程式來輔助,才能達到事半功倍的效果。
以往,筆者曾經搜尋過很多去除表格樣式、只保留表格結構與文字內容的線上工具,
不過都不太符合筆者的需求,
後來找到上述演示網頁這支程式,才算是幫助筆者解決日常工作上的一大難題。

這支程式雖然會把 Word、Excel 的表格轉換為很〝乾淨〞的 html 原始碼,
不過它也不是完全沒有缺點,最令筆者困擾的地方就是:
「當儲存格中有斷行時,轉換後斷行會消失!」
因為「斷行」是隱藏的程式代碼(並非文字資料),因此必須要先找一個符號來取代「斷行」,
以便在轉換為 html 原始碼後,能將這個符號取代為「<br />」,讓應該斷行的地方得以保持。
通常筆者會先搜尋原始的 Word 表格裡是否有包含「★」這個符號,
如果沒有,就選定它來取代斷行符號;如果有,就再重新選一個原始的表格裡沒有用到的符號。
取代的方式很簡單,只要在 Word 裡選好表格,按下「Ctrl + H」,
然後先將「^p」(正常按下 Enter 時產生的斷行)取代成為「★」,
再將「^l」(以 Shift + Enter 產生的斷行,或由網頁複製到 Word 而產生的斷行)取代成為「★」。
如果是 Excel 表格裡的斷行(限以 Alt + Enter 產生的斷行),
則是在「尋找目標」按下「Ctrl + J」(按下後不會出現字元),
「取代成」輸入「★」,再按「全部取代」即可。
最後將整個表格貼到演示網頁的框格內,再按下步驟二的「這個按鈕」,
如果出現提示,請按「允許存取」(存取剪貼簿)、「確定」(來自 Word 或 Excel),
隨後框格裡的內容就會轉換為 html 原始碼。
將它們全部複製到「記事本」或「EditPlus」,再將「★」取代為「<br \>」(或「<br>」)。
(如果「★」有很多個的話,建議使用 EditPlus,它的處理速度會比「記事本」快很多)
取代完成後,再到網頁編輯器裡,切換為 html 原始碼編輯模式,
然後將轉換好後的表格原始碼貼到適當的位置,切換回「所見即所得」模式時,
就會看到已經去除樣式、只保留儲存格結構的表格了!

以上是針對第一個缺點的因應之策,
第二個缺點就是限用 IE(Internet Explorer)瀏覽器開啟這個演示網頁,
用 Firefox、Opera、Google Chrome、Safari,甚至是微軟自家的 Edge 都不行,
這使得這個演示網頁的操作環境有些限制!
(用這些瀏覽器的話,貼上表格內容,並按下步驟二的「這個按鈕」後,框線裡的內容不會被轉換)

另外,對於表格裡的空白儲存格,建議先補上全型空白,再貼到演示網頁裡轉換。
這是因為 IE 遇到完全空白的儲存格時,儲存格四邊的格線會自動消失,
補上全型空白就可以解決這個問題。

arrow
arrow
    全站熱搜

    terryhung 發表在 痞客邦 留言(0) 人氣()