Microsoft Office是由Microsoft(微軟)公司開發的一套辦公軟件套裝。常用組件有 Word、Excel、PowerPoint等。Microsoft Office是一套由微軟公司開發的辦公軟件,它為 Microsoft Windows 和 Mac OS X而開發。 本系列前面的文章已經將onenote內部鏈接、外部鏈接相關知識點都梳理了一遍,對于理解onenote鏈接基本夠用了。但鑒于對象ID屬性的重要性,可以再進行一些深入探討。 ID作為唯一的身份標識符,無論是在網絡世界還是現實世界,都起著重要作用。原因很簡單,你想和某個對象溝通,最基本的前提是找到這個對象,并確定他就是他,而不是其他。如何做到?通過ID。 1.onenote中的對象ID是什么? 分區、頁面和段落的鏈接地址中都帶上了ID屬性。這個ID,據我的理解,其實就是一個GUID即全局唯一標識符,具體細節可參考此文: COM-組件對象模型,與GUID-全局唯一標識符 GUID可以理解為全宇宙唯一的值(按規定算法生成兩個相同GUID的可能性極小極小,概率上雖不是0,但可以當做0),onenote中新建分區、頁面或段落時都會為對象即時賦予一個GUID,這就確保了onenote中的這些對象全部是宇宙間獨一無二的,通過GUID就能找到對應的對象,不用擔心找錯。 2.直接用ID定位對象 當對象的鏈接地址中帶上ID值后,鏈接的穩定性大大增加。 有了ID值,要在onenote中找分區、頁面或段落,可以直接用ID進行準確定位,絲毫不用考慮外部文件(夾)路徑的變化。 還是用之前的“小斯想段落”段落地址舉例,完整地址是: onenote://D:/小斯想筆記本/小斯想分區組/小斯想分區.one#小斯想頁面§ion-id={F3786832-BC35-45D6-97A4-98B7F4A025F6}&page-id={CE390548-D979-459D-9DA0-FE19F992E473}&object-id={C2CCD78A-85F8-4239-BA40-DA1A2EFF9A60}&21 自定義內部鏈接地址時,根本無需寫這么復雜。 例如,通過onenote://section-id={F3786832-BC35-45D6-97A4-98B7F4A025F6},可以直接定位至“小斯想分區”;通過onenote://page-id={CE390548-D979-459D-9DA0-FE19F992E473}可以直接定位至“小斯想頁面”。 不過,定位至具體段落時似乎有所不同,測試結果是:object-id前面必須得帶上頁面ID,后面必須帶上&21(位置索引號,不同位置的索引號不同,缺了它只能定位至頁面,不能具體至段落),這樣才能準確定位至段落,例如通過onenote://page-id={CE390548-D979-459D-9DA0-FE19F992E473}&object-id={C2CCD78A-85F8-4239-BA40-DA1A2EFF9A60}&21,可以準確定位至“小斯想段落”。至于段落ID定位為何要搞得如此復雜,尚不理解其底層邏輯。 3.ID何時有效,何時失效? 本來應該結合onenote對象的生命周期來談這個問題,但缺乏官方的權威參考資料,就不瞎猜了。在這里,還是結合我的實際使用體驗總結鏈接地址中ID的有效性,目前來說,最重要的結論有兩個: 對象所在的筆記本必須處于打開狀態,地址中的ID才有效。所謂打開,指的是筆記本必須位于onenote的“筆記本窗格”(NotebookRoot)下。 移動對象,ID不變;剪切后粘貼對象,建立的是對象的副本,擁有全新ID,而原ID對應的對象可以理解為已銷毀(分區和頁面對象會在回收站保留一段時間再銷毀,段落對象會直接銷毀),原ID失效。所以,如果你鏈接了某個內部對象,可以移動調整其位置,但如果剪切或刪除了,對應鏈接中的ID部分就會失效。 ID部分還有些可以深入的細節,但不想繼續往下了。已經總結的這些,足夠建立鏈接管理體系了。所以,底層理論探索部分,先到此為止了。 Office辦公軟件是辦公的第一選擇,這個地球人都知道。Microsoft Office 2010的新界面簡潔明快,標識也改為了全橙色。 |
溫馨提示:喜歡本站的話,請收藏一下本站!