2017-07-05 21 views
0

據我所知,Word Javascript API的許多方法返回RangeRangeCollection。但是,有沒有一個構造函數可以直接用來創建一個新的Range在Word中創建自定義範圍JavaScript API/Office.js

我的用例是我需要查看每個段落,識別錯誤並突出顯示它們。所以,我想僅僅使用API​​獲取段落的純文本,自己找到錯誤,然後使用該信息創建一個Range,我可以用它來裝飾文本(或添加Bounday/ContentControl稍後參考它)。

回答

0

有幾個選項適合你。

a。使用搜索 - 您可以將其範圍限定在段落中。你也可以使用範圍。 compareLocationWith比較,如果找到的範圍是相同的,並刪除笨蛋。所以這個想法是你抓住一段,分析,找到問題,做一個搜索來得到範圍(並確保是你需要的範圍)。一旦你有一個範圍,你可以申請格式,插入內容控制或插入,替換內容。

b。使用split - 是一種可用於將段落分解爲單詞(每個範圍)的方法。

c。 ExpandTo - 將給定範圍擴展到另一個範圍。 d)。在任何對象上,您都可以使用.getRange()來獲取關聯的範圍。

+0

奇怪的是,沒有明顯的方法來創建一個'範圍' – user756201

+0

API上的幾乎所有方法都返回一個範圍,但很想看看你的期望。 –

+0

由於我在我想要修飾的錯誤文本中獲得偏移量,我希望能夠通過'var range = new Range(startOffset,endOffset);'或'段落中有類似'var range = paragraph.getRange(startOffset,endOffset);' 如果不能創建範圍,似乎沒有辦法驗證從'search'返回的'Range'或'split'與我想要裝飾的單詞相同,因爲如果沒有'Range'對象,就不能使用'compareLocationWith'。 Catch 22. – user756201