どうもcoto.です。
今回はGoogle Apps Script でドキュメントを作成しながら書式も設定していく方法の紹介。
コードと少し解説
文字のサイズ
文書の途中で文字のサイズを変更するコードです。
function size() {
var doc = DocumentApp.openById('ドキュメントのID'); //ドキュメントのID
var body = doc.getBody(); //本文を取得
//新しい段落で「文字サイズ10」を10pt で挿入
var paragraph = body.appendParagraph('文字サイズ10');
paragraph.editAsText().setFontSize('10');
//同じ段落に「文字サイズ20」を20pt で追記
var addText = paragraph.appendText('文字サイズ20');
addText.editAsText().setFontSize('20');
}
結果は以下のようになります。
文字の色・ハイライト(文字の背景色)
文字色と背景色を変更するコードです。
function color() {
var doc = DocumentApp.openById('ドキュメントのID'); //ドキュメントのID
var body = doc.getBody(); //本文を取得
//新しい段落で「文字の色は赤」を赤色 で挿入
var paragraph = body.appendParagraph('文字の色は赤');
paragraph.editAsText().setForegroundColor('#ff0000');
//同じ段落に「背景の色は赤」を赤色ハイライト付きで追記
var addText = paragraph.appendText('背景の色は赤');
addText.editAsText().setForegroundColor('#000000'); //上で文字色を赤にしているので黒に戻します
addText.editAsText().setBackgroundColor('#ff0000');
}
11行目は「文字の色は赤」で設定した赤が残っているので、文字色を黒に戻しています。
必要なければ削除してかまいません。
結果は以下のようになります。
太字(bold)・斜体(イタリック・italic)
文字を太字や斜体にするコードです。
function bolIta() {
var doc = DocumentApp.openById('ドキュメントのID'); //ドキュメントのID
var body = doc.getBody(); //本文を取得
//新しい段落で「文字を太字にします」をbold で挿入
var paragraph = body.appendParagraph('文字を太字にします');
paragraph.editAsText().setBold(true);
//同じ段落に「letters italic」をイタリックで追記
var addText = paragraph.appendText('letters italic');
addText.editAsText().setBold(false); //上で指定した太字を解除します
addText.editAsText().setItalic(true);
}
他の書式も同じですが、範囲を指定せず単純に設定すると
その後のテキストにも適用されるので必要なければ
解除のためのコード(ここでは11行目)を挿入します。
結果は以下のようになります。
上付き文字・下付き文字
文字を上付き、下付きにするコードです。
function superSub() {
var doc = DocumentApp.openById('ドキュメントのID
'); //ドキュメントのID
var body = doc.getBody(); //本文を取得
//新しい段落で「上付き文字にします」を上付き文字で挿入
var paragraph = body.appendParagraph('上付き文字にします');
paragraph.editAsText().setTextAlignment(DocumentApp.TextAlignment.SUPERSCRIPT);
//同じ段落に「いったん解除します」を通常の文字で追記
var addText1 = paragraph.appendText('いったん解除します');
addText1.editAsText().setTextAlignment(DocumentApp.TextAlignment.NORMAL);
//同じ段落に「下付き文字にします」を下付き文字で追記
var addText2 = paragraph.appendText('下付き文字にします');
addText2.editAsText().setTextAlignment(DocumentApp.TextAlignment.SUBSCRIPT);
}
他の書式設定とは異なり、.setTextAlignmentの中で
NORMAL(標準)、SUPERSCRIPT(上付き)、SUBSCRIPT(下付き)
を制御しています。
結果は以下のようになります。
範囲を指定して書式を設定する場合
ここまでは単純にサイズ、色などを変更してきましたが、
特定の部分のみを変更したい場合もあると思います。
その場合は、
function position() {
var doc = DocumentApp.openById('ドキュメントのID
'); //ドキュメントのID
var body = doc.getBody(); //本文を取得
//新しい段落で「1.0x10-3」の-3のを上付き文字で挿入
var paragraph = body.appendParagraph('1.0x10-3');
paragraph.editAsText().setTextAlignment(6, 7, DocumentApp.TextAlignment.SUPERSCRIPT);
}
7行目のように何文字目から何文字目までを変更するか指定します。
ポイント(?)は1, 2, 3…と数え始めるのではなく、0, 1, 2…と数えることです。
結果は以下のようになります。
御託
文字サイズ、色はそこそこ情報があるのですが、
上付き下付きについてはほぼ皆無だったので試行錯誤。
皆さんあまり使わないのでしょうか?
GASではなく普通にドキュメントを使うときもボタンが見つからず。
ただ…うちの業界では必須なんです。
分子式とかNMRのシグナル表記とかね!!!(本業ばれる)
公式のGoogle Developersページにも一見載っていないようでしたので、
同じ場面で躓いている方のお役に立てれば。
コメント