Wordを移行ということはGoogleドキュメントですよね?
Googleスプレッドシートは情報多いけど、Googleドキュメントは情報少ないんで大変です。
リファレンスを見るとgetFontWeight
はDocumentAppのBodyクラス、
textクラスどちらにも見当たりません。
どうやらGoogleドキュメントでは使えないメソッドなのかなと。
代わりにisBold(offset)
ってメソッドがTEXTクラスにあるので、
これを使って1文字ずつ太字判別して、単語として取得する方法が使えそうですね。
もっと良い方法があるのかもしれませんが・・・。
https://developers.google.com/apps-script/reference/document/text#isBold(Integer)
サンプル
GAS
1function getBoldWords() {
2 const body = DocumentApp.getActiveDocument().getBody();
3
4 const text = body.editAsText();
5 const plainText = text.getText();
6
7 let start = 0;
8 let count = 0;
9 const boldWords = [];
10
11 for(i=0; i<plainText.length; i++){
12 //前の文字が太字ではない時
13 if(count == 0){
14 //太字ならそこを単語の開始位置とする
15 if(text.isBold(i)){
16 start =i;
17 count++;
18 }
19 //前の文字が太字の時
20 }else{
21 //太字が続く場合はcountをプラス
22 if(text.isBold(i) && i<plainText.length-1){
23 count++;
24 //太字が終わったら、もしくはテキストの最後まできたら出力して、リセット
25 }else{
26 boldWords.push(plainText.slice(start,start+count));
27
28 start,count =0;
29 }
30 }
31 }
32 console.log(boldWords);
33}
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/09/29 11:36
2021/09/29 23:55