GASでテキスト置換PDF変換
GAS連携の概要
Google Apps Script(GAS)は、Google Workspace のサービスを自動化するための強力なツールです。GAS 連携を使えば、スプレッドシート、ドキュメント、Gmail などをスクリプトで操作できます。この記事では、ドキュメント応用に焦点を当て、replaceText、appendParagraph、appendImage などのメソッドを使った実践例を紹介します。
ドキュメント応用の実装
まずは、Google ドキュメントを取得し、編集可能な状態にします。以下のコードは、指定したドキュメント ID から Document オブジェクトを取得し、編集を開始するサンプルです。
function getDoc() {
var docId = 'YOUR_DOCUMENT_ID';
var doc = DocumentApp.openById(docId);
return doc;
}
取得した Document オブジェクトを使って、テキスト置換や段落追加、画像追加を行います。
テキスト置換と段落追加
replaceText は、ドキュメント内の文字列を検索して置換するメソッドです。以下の例では、{{name}} というプレースホルダーを実際の名前に置き換えます。
function replaceText(doc, placeholder, value) {
var body = doc.getBody();
body.replaceText(placeholder, value);
}
段落追加は appendParagraph を使って行います。新しい段落を追加し、テキストを設定する例です。
function addParagraph(doc, text) {
var body = doc.getBody();
body.appendParagraph(text);
}
これらを組み合わせることで、テンプレートドキュメントを動的に生成できます。
画像追加とPDF変換
appendImage は、画像をドキュメントに挿入するメソッドです。画像は URL から取得するか、Drive ファイル ID で指定できます。
function addImage(doc, imageUrl) {
var body = doc.getBody();
var response = UrlFetchApp.fetch(imageUrl);
var blob = response.getBlob();
body.appendImage(blob);
}
ドキュメントを PDF に変換するには、saveAndClose で変更を確定し、Drive API を使って PDF を生成します。
function exportPdf(docId, fileName) {
var doc = DocumentApp.openById(docId);
doc.saveAndClose();
var file = DriveApp.getFileById(docId);
var pdf = file.getAs('application/pdf');
pdf.setName(fileName + '.pdf');
DriveApp.createFile(pdf);
}
これにより、最終的なレポートを PDF 形式で保存・共有できます。
まとめ
GAS連携を活用すれば、ドキュメント応用のワークフローを自動化できます。replaceText でテキスト置換、appendParagraph で段落追加、appendImage で画像挿入、saveAndClose で変更確定、そして PDF 変換で最終成果物を生成する一連のプロセスをスクリプトでまとめることで、手作業の時間を大幅に短縮できます。ぜひ、実際のプロジェクトに取り入れてみてください。
コメント
コメントを投稿