本文介紹使用文字文檔時如何修改指定文本、設定選定文字的字型大小、在選定位置插入新段落等。
擷取和設定文本
擷取指定地區內具體的常值內容資訊。
文法
運算式.ActiveDocument.Range(Start, End).Text或運算式.ActiveDocument.Tables.Item(Index).Rows.Item(Index).Cells.Item(Index).Range.Text運算式:文件類型應用對象
樣本
樣本1
//@file=base.docx async function example() { await instance.ready(); const app = instance.Application; //擷取選中地區 const range = await app.ActiveDocument.Range(0, 100); //擷取文本 const text = await range.Text; console.log(text); //設定文本 range.Text = 'WebOffice'; }樣本2
//@file=base.docx 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 = 'WebOffice'; }
修改文本
根據傳入數組全文匹配並替換文本。
文法
運算式.ActiveDocument.ReplaceText(Array.<Object>)運算式:文件類型應用對象
參數:
傳入一個數組,表示需要替換的文本列表。
屬性
資料類型
是否必填
描述
list
Array.<Object>
是
要替換的文本列表。
list說明
屬性
資料類型
是否必填
描述
key
String
是
被替換的文本。
value
String
是
替換的文本。
options
Object
否
替換配置。
options說明
屬性
資料類型
是否必填
描述
isWildcardMatched
Boolean
否
使用萬用字元。支援星號(*)和問號(?)兩種萬用字元。
星號(*):代表任一字元串。
問號(?):代表任意單個字元,且此字元必須存在。
isCaseSensitive
Boolean
否
區分大小寫。
isWholeWordMatched
Boolean
否
全字匹配。
isWidthIgnored
Boolean
否
忽略全/半形。
傳回值
返回
Boolean值,為true表示替換成功,為false表示替換失敗。樣本
async function example() { await instance.ready(); const app = instance.Application; const isSuccess = await app.ActiveDocument.ReplaceText([ { key: 'WebOffice', value: 'js-sdk', }, ]); console.log(isSuccess); //true }
插入文本
在選區後面插入文本。
文法
運算式.ActiveDocument.ActiveWindow.Selection.InsertAfter(Text)運算式:文件類型應用對象
參數
屬性
資料類型
是否必填
描述
Text
String
是
需要插入的文本。
樣本
async function example() { await instance.ready(); const app = instance.Application; //在選區後插入文本 await app.ActiveDocument.ActiveWindow.Selection.InsertAfter('Text'); }
插入分隔字元
在選區後面插入分隔字元。
文法
運算式.ActiveDocument.ActiveWindow.Selection.InsertBreak()運算式:文件類型應用對象
樣本
async function example() { await instance.ready(); const app = instance.Application; //在選區位置插入分隔字元 await app.ActiveDocument.ActiveWindow.Selection.InsertBreak(); }
刪除字元
刪除選區位置前的字元。
文法
運算式.ActiveDocument.ActiveWindow.Selection.TypeBackspace()運算式:文件類型應用對象
樣本
async function example() { await instance.ready(); const app = instance.Application; //游標向下移動 await app.ActiveDocument.ActiveWindow.Selection.MoveDown(); //刪除游標前的字元 await app.ActiveDocument.ActiveWindow.Selection.TypeBackspace(); }
擷取開始位置
擷取地區開始位置。
文法
運算式.ActiveDocument.Range(Start, End).Start運算式.ActiveDocument.Tables.Item(Index).Rows.Item(Index).Cells.Item(Index).Range.Start運算式:文件類型應用對象
樣本
樣本1
async function example() { await instance.ready(); const app = instance.Application; //擷取選中地區 const range = await app.ActiveDocument.Range(0, 100); //擷取選中文本的開始位置 const start = await range.Start; console.log(start); }樣本2
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或運算式.ActiveDocument.Tables.Item(Index).Rows.Item(Index).Cells.Item(Index).Range.End運算式:文件類型應用對象
樣本
樣本1
async function example() { await instance.ready(); const app = instance.Application; //擷取選中地區 const range = await app.ActiveDocument.Range(0, 100); //擷取選中文本的結束位置 const end = await range.End; console.log(end); }樣本2
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); }
字型
擷取字型對象
通過Font對象可以控制選中內容的字型,例如設定字型類型、字型大小等內容。
文法
運算式.ActiveDocument.Range(Start, End).Font運算式:文件類型應用對象
樣本
async function example() { await instance.ready(); const app = instance.Application; //擷取字型對象 const font = await app.ActiveDocument.Range(0, 20).Font; }
設定字型類型
設定選定文字的字型類型。
文法
運算式.ActiveDocument.Range(Start, End).Font.Name運算式:文件類型應用對象
樣本
async function example() { await instance.ready(); const app = instance.Application; //擷取字型對象 const font = await app.ActiveDocument.Range(0, 20).Font; //設定選定文字的字型類型 font.Name = '宋體'; }
設定字型大小
設定選定文字的字型大小。
文法
運算式.ActiveDocument.Range(Start, End).Font.Size運算式:文件類型應用對象
樣本
async function example() { await instance.ready(); const app = instance.Application; //擷取字型對象 const font = await app.ActiveDocument.Range(0, 20).Font; //設定選定文字的字型大小 font.Size = 30; }
設定字型顏色
設定選定文字的字型顏色。有以下兩種方式:
方法一:
文法
運算式.ActiveDocument.Range(Start, End).Font.Color運算式:文件類型應用對象
樣本
async function example() { await instance.ready(); const app = instance.Application; //擷取字型對象 const font = await app.ActiveDocument.Range(0, 20).Font; //設定選定文字的字型顏色 font.Color = '#228B22'; }
方法二:
文法
運算式.ActiveDocument.Range(Start, End).Font.ColorIndex(WdColorIndex)運算式:文件類型應用對象
參數
屬性
資料類型
是否必填
描述
WdColorIndex
Enum
是
設定字型顏色。
Enum.WdColorIndex取值範圍如下:-1或wdByAuthor:由文檔作者定義的顏色。
0或wdAutor(預設):自動配色,通常為黑色。
1或wdBlackr:黑色。
2或wdBluer:藍色。
3或wdTurquoiser:青綠色。
4或wdBrightGreen:鮮綠色。
5或wdPink:粉紅色。
6或wdRed:紅色。
7或wdYellow:黃色。
8或wdWhite:白色。
9或wdDarkBlue:深藍色。
10或wdTeal:青色。
11或wdGreen:綠色。
12或wdViolet:紫色。
13或wdDarkRed:深紅色。
14或wdDarkYellow:深黃色。
15或wdGray50:50%灰色底紋。
16或wdGray25:25%灰色底紋。
樣本
async function example() { await instance.ready(); const app = instance.Application; //擷取字型對象 const font = await app.ActiveDocument.Range(0, 20).Font; //設定選定文字的字型顏色 await font.ColorIndex(2); }
設定字型高亮色
文法
運算式.ActiveDocument.Range(Start, End).Font.HighLight運算式:文件類型應用對象
樣本
async function example() { await instance.ready(); const app = instance.Application; //擷取字型對象 const font = await app.ActiveDocument.Range(0, 20).Font; //設定選定文字的高亮色 font.HighLight = '#228B22'; }
段落
擷取段落對象
文法
運算式.ActiveDocument.Range(Start, End).ParagraphFormat運算式:文件類型應用對象
樣本
async function example() { await instance.ready(); const app = instance.Application; //擷取段落對象 const paragraphFormat = await app.ActiveDocument.Range(0, 20).ParagraphFormat; }
插入新段落
在選區位置插入新段落。
文法
運算式.ActiveDocument.ActiveWindow.Selection.InsertParagraph()運算式:文件類型應用對象
樣本:
async function example() { await instance.ready(); const app = instance.Application; //在選區位置插入新段落 await app.ActiveDocument.ActiveWindow.Selection.InsertParagraph(); }
縮排首行
文法
運算式.ActiveDocument.Range(Start, End).ParagraphFormat.CharacterUnitFirstLineIndent運算式:文件類型應用對象
樣本
async function example() { await instance.ready(); const app = instance.Application; //擷取段落對象 const paragraphFormat = await app.ActiveDocument.Range(0, 20).ParagraphFormat; //首行縮排2單位 paragraphFormat.CharacterUnitFirstLineIndent = 2; }
設定行距
文法
運算式.ActiveDocument.Range(Start, End).ParagraphFormat.LineSpacingRule運算式:文件類型應用對象
樣本
async function example() { await instance.ready(); const app = instance.Application; //擷取段落對象 const paragraphFormat = await app.ActiveDocument.Range(0, 20).ParagraphFormat; //設定1.5倍間距 paragraphFormat.LineSpacingRule = 1.5; }