本文介紹與文字文檔Range相關的API。
Range
ActiveDocument.Range(Start, End)
擷取地區對象,每個地區對象由一個起始字元位置和一個終止字元位置定義。
JS-SDK V1.1.10及以上版本支援此功能。
文法
運算式.ActiveDocument.Range(Start, End)或者
運算式.ActiveDocument.ActiveWindow.Selection.Range或者
運算式.ActiveDocument.Tables.Item(Index).Range或者
運算式.ActiveDocument.Tables.Item(Index).Rows.Item(Index).Cells.Item(Index).Range運算式:文件類型應用對象
樣本
擷取文檔中的地區對象
async function example() { await instance.ready(); const app = instance.Application; //擷取地區對象 const range = app.ActiveDocument.Range(0, 100); }擷取儲存格中的地區對象
async function example() { await instance.ready(); const app = instance.Application; //擷取第1個表格 const tableOne = await app.ActiveDocument.Tables.Item(1); //擷取表格第1行的第1個儲存格 const cellOne = await tableOne.Rows.Item(1).Cells.Item(1); //擷取該儲存格的地區對象 const range = await cellOne.Range; }
方法
ActiveDocument.Range().Item()
通過Item()方法,您可以擷取指定地區範圍。
文法
運算式.ActiveDocument.Range(Start, End).Item({ Start, End })或者
運算式.ActiveDocument.Tables.Item(Index).Rows.Item(Index).Cells.Item(Index).Range.Item({ Start, End })運算式:文件類型應用對象
參數
屬性
資料類型
是否必填
描述
Start
Number
是
開始位置。
End
Number
是
結束位置。
樣本
擷取文檔中的指定地區對象
async function example() { await instance.ready(); const app = instance.Application; //擷取地區對象 const range = app.ActiveDocument.Range(0, 100); //擷取指定地區範圍 const item = await range.Item(0, 50); }擷取儲存格中的指定地區對象
async function example() { await instance.ready(); const app = instance.Application; //擷取第1個表格 const tableOne = await app.ActiveDocument.Tables.Item(1); //擷取表格第1行的第1個儲存格 const cellOne = await tableOne.Rows.Item(1).Cells.Item(1); //擷取該儲存格的地區對象 const range = await cellOne.Range; //擷取指定地區範圍 const item = await range.Item(1, 10); }
ActiveDocument.Range(Start, End).GetHtmlData()
通過GetHtmlData()方法,您可以擷取指定地區帶格式的HTML資料。
JS-SDK V1.1.14及以上版本支援此功能。
文法
運算式.ActiveDocument.Range(Start, End).GetHtmlData()運算式:文件類型應用對象
傳回值
屬性
資料類型
描述
HTML
String
HTML資料。
Text
String
文本資料。
樣本
async function example() { await instance.ready(); const app = instance.Application; //擷取地區對象 const range = app.ActiveDocument.Range(10, 20); //擷取指定地區帶格式的HTML資料 const htmlInfo = await range.GetHtmlData(); console.log(htmlInfo); }
ActiveDocument.Range(Start, End).PasteHtml()
通過PasteHtml()方法,您可以粘貼帶格式的HTML資料到指定地區。
JS-SDK V1.1.14及以上版本支援此功能。
文法
運算式.ActiveDocument.Range(Start, End).PasteHtml({ HTML })運算式:文件類型應用對象
參數
屬性
資料類型
是否必填
描述
HTML
String
是
HTML資料,可通過
ActiveDocument.Range(Start, End).GetHtmlData()擷取。樣本
async function example() { await instance.ready(); const app = instance.Application; //擷取地區對象 const range = app.ActiveDocument.Range(10, 20); //擷取指定地區帶格式的HTML資料 const htmlInfo = await range.GetHtmlData(); //粘貼帶格式的HTML資料到指定地區 await app.ActiveDocument.Range(110, 110).PasteHtml({ HTML: htmlInfo.HTML, }); }
ActiveDocument.Range(Start, End).SetRange()
通過SetRange()方法,您可以設定現有範圍起始字元和結束字元的位置。
文法
運算式.ActiveDocument.Range(Start, End).SetRange({ Start, End })或者
運算式.ActiveDocument.Tables.Item(Index).Rows.Item(Index).Cells.Item(Index).Range.SetRange({ Start, End })運算式:文件類型應用對象
參數
屬性
資料類型
是否必填
描述
Start
Number
是
地區開始位置。
End
Number
是
地區結束位置。
樣本
設定文檔現有範圍起始字元和結束字元的位置
async function example() { await instance.ready(); const app = instance.Application; //擷取地區對象 const range = app.ActiveDocument.Range(0, 100); //設定現有範圍起始字元和結束字元的位置 await range.SetRange(10, 20); }設定儲存格現有範圍起始字元和結束字元的位置
async function example() { await instance.ready(); const app = instance.Application; //擷取第1個表格 const tableOne = await app.ActiveDocument.Tables.Item(1); //擷取表格第1行的第1個儲存格 const cellOne = await tableOne.Rows.Item(1).Cells.Item(1); //擷取該儲存格的地區對象 const range = await cellOne.Range; //設定現有範圍起始字元和結束字元的位置 const newRange = await range.SetRange({ Start: 1, End: 10, }); }
ActiveDocument.Range(Start, End).Find
通過Find()方法,您可以尋找指定地區的內容。
JS-SDK V1.1.19及以上版本支援此功能。
文法
運算式.ActiveDocument.Range(Start, End).Find運算式:文件類型應用對象
參數
屬性
資料類型
預設值
是否必填
描述
Text
String
是
尋找目標
ShowHighlight
Boolean
true
否
是否高亮顯示
FilterConfig
Object
true
否
配置項(WebOffice v8.5.1+ 支援)
FilterConfig 說明
屬性
資料類型
預設值
是否必填
描述
isCaseSensitive
Boolean
false
否
區分大小寫
isWholeWordMatched
Boolean
false
否
全字匹配
isWidthIgnored
Boolean
false
否
忽略全/半形
isWildcardMatched
Boolean
false
否
使用萬用字元
isRegexMatched
Boolean
false
否
使用Regex(同時開啟萬用字元和Regex以Regex優先)
樣本
async function example() { await instance.ready(); const app = instance.Application; // 擷取選中地區 const range = await app.ActiveDocument.Range(0, 10); // 尋找內容 range.Find('WPS') }
屬性
ActiveDocument.Range(Start, End).Start
通過Start屬性,您可以擷取指定地區的開始位置。
文法
運算式.ActiveDocument.Range(Start, End).Start或者
運算式.ActiveDocument.Tables.Item(Index).Rows.Item(Index).Cells.Item(Index).Range.Start運算式:文件類型應用對象
樣本
擷取文檔指定地區的開始位置
async function example() { await instance.ready(); const app = instance.Application; //擷取地區對象 const range = app.ActiveDocument.Range(0, 100); //擷取開始位置 const start = await range.Start; console.log(start); }設定儲存格指定地區的開始位置
async function example() { await instance.ready(); const app = instance.Application; //擷取第1個表格 const tableOne = await app.ActiveDocument.Tables.Item(1); //擷取表格第1行的第1個儲存格 const cellOne = await tableOne.Rows.Item(1).Cells.Item(1); //擷取該儲存格的地區對象 const range = await cellOne.Range; //擷取開始位置 const start = await range.Start; console.log(start); }
ActiveDocument.Range(Start, End).End
通過End屬性,您可以擷取指定地區的結束位置。
文法
運算式.ActiveDocument.Range(Start, End).End或者
運算式.ActiveDocument.Tables.Item(Index).Rows.Item(Index).Cells.Item(Index).Range.End運算式:文件類型應用對象
樣本
擷取文檔指定地區的結束位置
async function example() { await instance.ready(); const app = instance.Application; //擷取地區對象 const range = app.ActiveDocument.Range(0, 100); //擷取結束位置 const end = await range.End; console.log(end); }設定儲存格指定地區的結束位置
async function example() { await instance.ready(); const app = instance.Application; //擷取第1個表格 const tableOne = await app.ActiveDocument.Tables.Item(1); //擷取表格第1行的第1個儲存格 const cellOne = await tableOne.Rows.Item(1).Cells.Item(1); //擷取該儲存格的地區對象 const range = await cellOne.Range; //擷取結束位置 const end = await range.End; console.log(end); }
ActiveDocument.Range(Start, End).Font
通過Font屬性,您可以擷取指定地區的字型對象。
文法
運算式.ActiveDocument.Range(Start, End).Font或者
運算式.ActiveDocument.Tables.Item(Index).Rows.Item(Index).Cells.Item(Index).Range.Font運算式:文件類型應用對象
樣本
擷取文檔指定地區的字型對象
async function example() { await instance.ready(); const app = instance.Application; //擷取地區對象 const range = app.ActiveDocument.Range(0, 100); //擷取字型對象 const font = await range.Font; console.log(font); }擷取儲存格指定地區的字型對象
async function example() { await instance.ready(); const app = instance.Application; //擷取第1個表格 const tableOne = await app.ActiveDocument.Tables.Item(1); //擷取表格第1行的第1個儲存格 const cellOne = await tableOne.Rows.Item(1).Cells.Item(1); //擷取該儲存格的地區對象 const range = await cellOne.Range; //擷取字型對象 const font = await range.Font; }
ActiveDocument.ActiveWindow.Selection.Range.HighlightColorIndex
通過HighlightColorIndex屬性,您可以設定和擷取指定地區的醒目提示,頁面重新整理後高亮不消失。
文法
運算式.ActiveDocument.ActiveWindow.Selection.Range.HighlightColorIndex = WdColorIndex運算式:文件類型應用對象
參數
屬性
資料類型
是否必填
描述
WdColorIndex
Enum
否
指定地區的醒目提示。更多資訊,請參見WdColorIndex。
樣本
async function example() { await instance.ready(); const app = instance.Application; //設定和擷取指定地區的醒目提示,頁面重新整理後高亮不消失 app.ActiveDocument.ActiveWindow.Selection.Range.HighlightColorIndex = 7; }
ActiveDocument.ActiveWindow.Selection.Range.HighlightColorIndexTemp
通過HighlightColorIndexTemp屬性,您可以設定和擷取指定地區的醒目提示,頁面重新整理後高亮消失。
文法
運算式.ActiveDocument.ActiveWindow.Selection.Range.HighlightColorIndexTemp = WdColorIndex運算式:文件類型應用對象
參數
屬性
資料類型
是否必填
描述
WdColorIndex
Enum
否
指定地區的醒目提示,更多資訊,請參見WdColorIndex。
樣本
async function example() { await instance.ready(); const app = instance.Application; //設定和擷取指定地區的醒目提示,頁面重新整理後高亮消失 app.ActiveDocument.ActiveWindow.Selection.Range.HighlightColorIndexTemp = 7; }
ActiveDocument.Range.Information()
通過Information()屬性,您可以擷取頁面相關資訊(目前僅支援擷取總頁數)。
JS-SDK V1.1.10及以上版本支援此功能。
由於文字文檔是流式排版,因此無法在一開始就確定最終頁數,只有瀏覽到最底部才能擷取總頁數。
文法
運算式.ActiveDocument.Range.Information(WdInformation)運算式:文件類型應用對象
參數
通過
app.Enum.WdInformation擷取所選內容或地區的資訊的類型。屬性
資料類型
是否必填
描述
WdInformation
Enum
是
擷取頁面資訊,目前僅支援擷取總頁數。更多資訊,請參見WdInformation。
傳回值
屬性
資料類型
描述
PagesCount
Number
當前已經排版的頁碼。
End
Boolean
是否已排版結束。
樣本
async function example() { await instance.ready(); const app = instance.Application; //擷取總頁數 const totalPages = await app.ActiveDocument.Range.Information(app.Enum.WdInformation.wdNumberOfPagesInDocument); console.log(totalPages); }
ActiveDocument.Range(Start, End).Paragraphs
通過Paragraphs屬性,您可以擷取指定地區中的所有段落對象。
JS-SDK V1.1.14及以上版本支援此功能。
文法
運算式.ActiveDocument.Range(Start, End).Paragraphs或者
運算式.ActiveDocument.Tables.Item(Index).Rows.Item(Index).Cells.Item(Index).Range.Paragraphs運算式:文件類型應用對象
樣本
擷取文檔指定地區的所有段落對象
async function example() { await instance.ready(); const app = instance.Application; //擷取地區對象 const range = app.ActiveDocument.Range(0, 100); //擷取所有段落對象 const info = await range.Paragraphs; }擷取儲存格指定地區的所有段落對象
async function example() { await instance.ready(); const app = instance.Application; //擷取第1個表格 const tableOne = await app.ActiveDocument.Tables.Item(1); //擷取表格第1行的第1個儲存格 const cellOne = await tableOne.Rows.Item(1).Cells.Item(1); //擷取該儲存格的地區對象 const range = await cellOne.Range; //擷取所有段落對象 const paragraphFormat = await range.Paragraphs; }
ActiveDocument.Range(Start, End).ParagraphFormat
通過ParagraphFormat屬性,您可以擷取指定地區的段落格式。
文法
運算式.ActiveDocument.Range(Start, End).ParagraphFormat或者
運算式.ActiveDocument.Tables.Item(Index).Rows.Item(Index).Cells.Item(Index).Range.ParagraphFormat運算式:文件類型應用對象
樣本
擷取文檔指定地區的段落格式
async function example() { await instance.ready(); const app = instance.Application; //擷取地區對象 const range = app.ActiveDocument.Range(0, 100); //擷取段落格式 const info = await range.ParagraphFormat; }擷取儲存格指定地區的段落格式
async function example() { await instance.ready(); const app = instance.Application; //擷取第1個表格 const tableOne = await app.ActiveDocument.Tables.Item(1); //擷取表格第1行的第1個儲存格 const cellOne = await tableOne.Rows.Item(1).Cells.Item(1); //擷取該儲存格的地區對象 const range = await cellOne.Range; //擷取段落格式 const paragraphFormat = await range.ParagraphFormat; }
ActiveDocument.Range(Start, End).Text
通過Text屬性,您可以擷取和設定常值內容。
JS-SDK V1.1.10及以上版本支援擷取文本。
JS-SDK V1.1.11及以上版本支援設定文本
文法
運算式.ActiveDocument.Range(Start, End).Text或者
運算式.ActiveDocument.Tables.Item(Index).Rows.Item(Index).Cells.Item(Index).Range.Text運算式:文件類型應用對象
樣本
擷取和設定文檔指定地區中的文本
async function example() { await instance.ready(); const app = instance.Application; //擷取地區對象 const range = app.ActiveDocument.Range(0, 100); //擷取文本 const text = await range.Text; console.log(text); //設定文本 range.Text = 'Aliyun'; }擷取和設定儲存格指定地區中的文本
async function example() { await instance.ready(); const app = instance.Application; //擷取第1個表格 const tableOne = await app.ActiveDocument.Tables.Item(1); //擷取表格第1行的第1個儲存格 const cellOne = await tableOne.Rows.Item(1).Cells.Item(1); //擷取該儲存格的地區對象 const range = await cellOne.Range; //擷取文本 const text = await range.Text; console.log(text); //設定文本 range.Text = 'Aliyun'; }