2012-05-08 34 views
2

MSWORD文檔中的文本,當您剪切和粘貼一個Word文檔到文檔HTMT(具體爲contenteditable格)我注意到它包含了很多的元數據。我感興趣的是一個JavaScript函數,可以將這些文本分頁成多個div,因爲它們是word文檔中的「頁面」。分頁與JavaScript

如果你不熟悉,這裏的word文檔的樣子從查看源代碼的縮寫版本:

<div contenteditable="true" > 
<!--[if gte mso 9]><xml> 
<o:OfficeDocumentSettings> 
<o:AllowPNG/> 
</o:OfficeDocumentSettings> 
    </xml><![endif]--> 
     <!--lots more junk until get to actual content which is here:--> 
    <p class="Default"> 
     <b><span style="font-size:14.0pt;font-family:Arial;color:windowtext"> 
      &nbsp;I am the actual title of this work. <o:p></o:p></span> 
     </b> 
    </p> 

回答

2

我不知道這是可能的,而不實際模擬這個詞呈現方式文本。就我的理解而言,新頁面的位置取決於每個頁面上可放置多少內容。除非您正在尋找物理分頁符(可能能夠位於此元數據中),否則我不確定您是否可以找到實際分頁的位置。

編輯

因爲它似乎是使用HTML大多有點東西,這是可能的,你可以寫一個JavaScript的解決方案,操縱DOM做渲染和高度計算。它可以進行一種'二分查找'來確定在給定頁面上可以容納多少個元素。當找到這些元素時,它可以放置它們並繼續向後續頁面添加元素。

再次編輯

這裏是什麼這樣的做法可能看起來像一個快速的小提琴:

http://jsfiddle.net/LukeGT/Vtdgh/2/

注意,這不破段落像一個正常的文件應該(這是一個相當複雜的過程),並且我沒有測試過這麼多,所以肯定會出現錯誤。認爲這是一個起點。您還必須自己刪除文檔中的所有非HTML元素。該腳本從#doc DIV讀取,並把li的是在頁面的底部的ul頁面。希望這可以幫助。

+0

謝謝,是的解決方案可能是基於字符數或一些元數據標籤,不知道... –

+0

嗨@LukeGT,感謝您的進一步解釋,我想我的概念理解,而不是代碼的外觀,你可以對此採取一些措施嗎? –

+1

當然,看看我的編輯快速模擬 – LukeGT