Google Dokümanlar'ın kapsamını genişletme

Google Apps Komut Dosyası, Google Dokümanlar'ı programlı bir şekilde oluşturmanıza ve Ayrıca kullanıcı arayüzünü yeni menüler, iletişim kutuları kenar çubukları.

Temel bilgiler

Apps Komut Dosyası, Google Dokümanlar ile iki genel şekilde etkileşim kurabilir: herhangi bir komut dosyası komut dosyasının kullanıcısı ilgili doküman için uygun izinlere sahipse bir doküman oluşturabilir veya dokümanı değiştirebilirsiniz. bir komut dosyası da bağlıdır. Bu işlem, kullanıcı arayüzünü değiştirmek veya dokümanı açar. Google Dokümanlar'dan kapsayıcıya bağlı bir komut dosyası oluşturmak için Uzantılar > Apps Komut Dosyası'nı tıklayın.

Her iki durumda da, Apps Komut Dosyası'nın içinden bir Google Dokümanı ile etkileşimde bulunmak kolaydır. Document Service (Belge Hizmeti) gösteriyor.

function createDoc() {
  var doc = DocumentApp.create('Sample Document');
  var body = doc.getBody();
  var rowsData = [['Plants', 'Animals'], ['Ficus', 'Goat'], ['Basil', 'Cat'], ['Moss', 'Frog']];
  body.insertParagraph(0, doc.getName())
      .setHeading(DocumentApp.ParagraphHeading.HEADING1);
  table = body.appendTable(rowsData);
  table.getRow(0).editAsText().setBold(true);
}

Yukarıdaki komut dosyası, kullanıcının Google Drive'ında yeni bir doküman oluşturur ve ardından dokümanın adı ile aynı metni içeren paragrafları, paragrafını başlık olarak ekler ve dizi örneğidir. Komut dosyası bu değişiklikleri bir mevcut dokümandaki DocumentApp.create() DocumentApp.openById() ile veya openByUrl(). Bir doküman içinde oluşturulan komut dosyaları (kapsayıcıya bağlı) için DocumentApp.getActiveDocument().

Bir belgenin yapısı

Apps Komut Dosyası açısından bakıldığında, bir Google Dokümanı HTML gibi yapılandırılmıştır. dokümandır; yani bir Google Dokümanı, bir doküman gibi Paragraph veya Table) gibi, öğeler. Bir Google Dokümanını değiştiren çoğu komut dosyası, getBody(), çünkü Body, şu özelliklere sahip bir ana öğedir: şunlar dışındaki tüm diğer öğeleri içerir: HeaderSection, FooterSection ve herhangi bir Footnotes.

Ancak hangi öğe türlerinin diğer türleri içerebileceğiyle ilgili kurallar vardır. Ayrıca, Apps Komut Dosyası'ndaki Belge Hizmeti yalnızca belirli türleri oluşturuyoruz. Aşağıdaki ağaç, belirli bir öğede hangi öğelerin türünden emin olun.

Kalın yazı tipiyle gösterilen öğeler eklenebilir. kalın olmayan öğeler yalnızca manipüle edilmiş olmalıdır.

Metin değiştiriliyor

Google Dokümanlar'da metin değiştirmek için genellikle Apps Komut Dosyası kullanılır. Diyelim ki müşteri bilgileriyle dolu bir e-tablonuz varsa ve kişiselleştirilmiş bir Google Dokümanlar'ı kullanabilirsiniz. (Bu tür işlemlere genellikle posta denir merge.)

Metin değiştirmenin birçok yolu vardır ancak en basit olanı replaceText() yönteminin kullanıldığından emin olun. replaceText, çoğu öğeyi destekliyor gibi çeşitli normal ifade özelliklerinden yararlanabilirsiniz. Aşağıdaki ilk işlev Google Dokümanlar'a birkaç satır yer tutucu metin ekler; gerçek dünyada, yer tutucuları dokümana sizin girmeniz daha olasıdır. İlgili içeriği oluşturmak için kullanılan ikinci fonksiyon, yer tutucuları client nesne algılandı.

Bu işlevlerin ikisinin de getActiveDocument() yöntemini kullanabilirsiniz. Bu yöntem, yalnızca bir Google Dokümanı içinde oluşturulan komut dosyaları için geçerlidir. bağımsız komut dosyası, DocumentApp.create(), openById(), veya openByUrl() .

Yer tutucu ekleyin

function createPlaceholders() {
  var body = DocumentApp.getActiveDocument().getBody();
  body.appendParagraph('{name}');
  body.appendParagraph('{address}');
  body.appendParagraph('{city} {state} {zip}');
}

Yer tutucuları değiştirme

function searchAndReplace() {
  var body = DocumentApp.getActiveDocument()
      .getBody();
  var client = {
    name: 'Joe Script-Guru',
    address: '100 Script Rd',
    city: 'Scriptville',
    state: 'GA',
    zip: 94043
  };

  body.replaceText('{name}', client.name);
  body.replaceText('{address}', client.address);
  body.replaceText('{city}', client.city);
  body.replaceText('{state}', client.state);
  body.replaceText('{zip}', client.zip);
}

Özel menüler ve kullanıcı arayüzleri

Google Dokümanlar'ı düzenlemek için menüler, iletişim kutuları kenar çubukları. Bununla birlikte, bir komut dosyasının yalnızca belli bir dosya için kullanıcı arayüzüyle açık bir dokümanın mevcut örneğini içerir ve yalnızca bağlı olacaktır.

Özel menülerin nasıl ekleneceğini ve iletişim kutularını Google Dokümanlar'a ekleyin. Bir iletişim kutusu veya kenar çubuğu için özel arayüzler oluşturma hakkında daha fazla bilgi için HTML Hizmeti kılavuzu. Özel arayüzünüzü eklentiyi öğrenmek için stil kılavuzu ile tutarlı olması için stiline ve düzenine dikkat edin.

Google Dokümanlar eklentileri

Eklentiler, Google Dokümanlar'ın içinde çalışır ve yüklenebilir Google Dokümanlar eklenti mağazasından indirin. Google Dokümanlar için bir komut dosyası geliştirdiyseniz ve bunu tüm dünyayla paylaşmak isterseniz Apps Komut Dosyası, komut dosyanızı bir eklenti olarak kullanabilirsiniz.

Google Dokümanlar için eklenti oluşturma hakkında bilgi edinmek üzere Dokümanlar eklentileri oluşturma hızlı başlangıç kılavuzu sayfasına göz atın.

Tetikleyiciler

Bir Google'a bağlı komut dosyaları Doküman, yanıt vermek için basit bir tetikleyici kullanabilir dokümanın onOpen etkinliğine doküman için düzenleme erişimi olan bir kullanıcı dokümanı Google Dokümanlar'da açtığında gerçekleşir.

Tetikleyiciyi ayarlamak için onOpen() adlı bir işlev yazmanız yeterlidir. Örneğin, Google Workspace'te özel menüler bölümünü inceleyin. Basit tetikleyici, menüleri eklemek için kullanışlı olsa da, herhangi bir Uygulama kullanamaz. Yetkilendirme gerektiren komut dosyası hizmetleri.