Google ডক্স প্রসারিত করা হচ্ছে

Google Apps স্ক্রিপ্ট আপনাকে প্রোগ্রাম্যাটিকভাবে Google ডক্স তৈরি এবং সংশোধন করতে দেয়, সেইসাথে নতুন মেনু, ডায়ালগ বক্স এবং সাইডবারগুলির সাথে ইউজার ইন্টারফেস কাস্টমাইজ করতে দেয়৷

অধিকার

অ্যাপস স্ক্রিপ্ট দুটি বিস্তৃত উপায়ে Google ডক্সের সাথে ইন্টারঅ্যাক্ট করতে পারে: যে কোনো স্ক্রিপ্ট একটি নথি তৈরি বা পরিবর্তন করতে পারে যদি স্ক্রিপ্টের ব্যবহারকারীর নথির জন্য উপযুক্ত অনুমতি থাকে, এবং একটি স্ক্রিপ্ট একটি নথিতেও আবদ্ধ হতে পারে, যা স্ক্রিপ্টটিকে পরিবর্তন করার বিশেষ ক্ষমতা দেয় নথি খোলা হলে ব্যবহারকারী ইন্টারফেস বা প্রতিক্রিয়া. Google ডক্সের মধ্যে থেকে একটি কন্টেইনার-বাউন্ড স্ক্রিপ্ট তৈরি করতে, এক্সটেনশন > অ্যাপস স্ক্রিপ্টে ক্লিক করুন।

উভয় ক্ষেত্রেই, অ্যাপস স্ক্রিপ্টের ডকুমেন্ট সার্ভিসের মাধ্যমে Google ডকের সাথে ইন্টারঅ্যাক্ট করা সহজ, যেমনটি নিম্নলিখিত উদাহরণটি দেখায়৷

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);
}

উপরের স্ক্রিপ্টটি ব্যবহারকারীর Google ড্রাইভে একটি নতুন নথি তৈরি করে, তারপরে একটি অনুচ্ছেদ সন্নিবেশ করায় যাতে নথির নামের মতো একই পাঠ্য থাকে, শিরোনাম হিসাবে অনুচ্ছেদের শৈলী থাকে এবং দ্বি-মাত্রিক অ্যারের মানগুলির উপর ভিত্তি করে একটি টেবিল যুক্ত করে৷ DocumentApp.create() এ কলটিকে DocumentApp.openById() বা openByUrl() ) দিয়ে প্রতিস্থাপন করে স্ক্রিপ্টটি বিদ্যমান নথিতে এই পরিবর্তনগুলিকে সহজেই করতে পারে। একটি নথির ভিতরে তৈরি স্ক্রিপ্টের জন্য (ধারক-বাউন্ড), DocumentApp.getActiveDocument() ব্যবহার করুন।

একটি নথির কাঠামো

অ্যাপস স্ক্রিপ্টের দৃষ্টিকোণ থেকে, একটি Google ডক অনেকটা একটি HTML নথির মতো গঠন করা হয়—অর্থাৎ, একটি Google দস্তাবেজ উপাদানগুলির সমন্বয়ে গঠিত (যেমন একটি Paragraph বা Table ) যা প্রায়শই অন্যান্য উপাদান ধারণ করে। বেশিরভাগ স্ক্রিপ্ট যা একটি Google ডক সংশোধন করে getBody() এ কল দিয়ে শুরু হয়, কারণ Body হল একটি প্রধান উপাদান যাতে HeaderSection , FooterSection এবং যেকোনো Footnotes ছাড়া অন্য সব উপাদান থাকে।

যাইহোক, কোন ধরনের উপাদান অন্যান্য ধরনের ধারণ করতে পারে সে সম্পর্কে নিয়ম আছে। উপরন্তু, অ্যাপস স্ক্রিপ্টে ডকুমেন্ট সার্ভিস শুধুমাত্র নির্দিষ্ট ধরনের উপাদান সন্নিবেশ করতে পারে। নীচের গাছটি দেখায় যে কোন উপাদানগুলি একটি নির্দিষ্ট ধরণের উপাদান দ্বারা ধারণ করতে পারে।

বোল্ডে দেখানো উপাদান সন্নিবেশ করা যেতে পারে; নন-বোল্ড উপাদানগুলিকে কেবল জায়গায় ম্যানিপুলেট করা যেতে পারে।

টেক্সট প্রতিস্থাপন

অ্যাপস স্ক্রিপ্ট প্রায়ই Google ডক্সে পাঠ্য প্রতিস্থাপন করতে ব্যবহৃত হয়। ধরা যাক আপনার কাছে ক্লায়েন্ট তথ্যে পূর্ণ একটি স্প্রেডশীট রয়েছে এবং আপনি প্রতিটি ক্লায়েন্টের জন্য একটি ব্যক্তিগতকৃত Google ডক তৈরি করতে চান৷ (এই ধরনের অপারেশনকে প্রায়ই মেল মার্জ বলা হয়।)

টেক্সট প্রতিস্থাপন করার অনেক উপায় আছে, কিন্তু সবচেয়ে সহজ হল replaceText() পদ্ধতিটি নীচের উদাহরণে দেখানো হয়েছে। replaceText জাভাস্ক্রিপ্টের বেশিরভাগ রেগুলার এক্সপ্রেশন বৈশিষ্ট্য সমর্থন করে। নীচের প্রথম ফাংশনটি Google ডকে প্লেসহোল্ডার পাঠ্যের বেশ কয়েকটি লাইন যোগ করে; বাস্তব জগতে, আপনি নিজেই নথিতে স্থানধারক টাইপ করার সম্ভাবনা বেশি থাকবেন। দ্বিতীয় ফাংশন client অবজেক্টে সংজ্ঞায়িত বৈশিষ্ট্যগুলির সাথে স্থানধারকদের প্রতিস্থাপন করে।

মনে রাখবেন যে এই দুটি getActiveDocument() পদ্ধতি ব্যবহার করে, যা শুধুমাত্র Google Doc-এর মধ্যে তৈরি স্ক্রিপ্টগুলিতে প্রযোজ্য; একটি স্বতন্ত্র স্ক্রিপ্টে, পরিবর্তে DocumentApp.create() , openById() , বা openByUrl() ব্যবহার করুন৷

কিছু স্থানধারক যোগ করুন

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

স্থানধারক প্রতিস্থাপন

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);
}

কাস্টম মেনু এবং ব্যবহারকারী ইন্টারফেস

আপনি মেনু, ডায়ালগ বক্স এবং সাইডবার যোগ করে Google ডক্স কাস্টমাইজ করতে পারেন। মনে রাখবেন, তবে, একটি স্ক্রিপ্ট শুধুমাত্র একটি খোলা নথির বর্তমান উদাহরণের জন্য UI এর সাথে ইন্টারঅ্যাক্ট করতে পারে এবং শুধুমাত্র যদি স্ক্রিপ্টটি নথিতে আবদ্ধ থাকে।

আপনার Google ডক্সে কাস্টম মেনু এবং ডায়ালগগুলি কীভাবে যুক্ত করবেন তা দেখুন৷ একটি ডায়ালগ বা সাইডবারের জন্য কাস্টম ইন্টারফেস তৈরি সম্পর্কে আরও জানতে, HTML পরিষেবার নির্দেশিকা দেখুন। আপনি যদি একটি অ্যাড- অনের অংশ হিসাবে আপনার কাস্টম ইন্টারফেস প্রকাশ করার পরিকল্পনা করছেন, তাহলে Google ডক্স সম্পাদকের শৈলী এবং বিন্যাসের সাথে সামঞ্জস্যের জন্য শৈলী নির্দেশিকা অনুসরণ করুন৷

Google ডক্সের জন্য অ্যাড-অন

অ্যাড-অনগুলি Google ডক্সের ভিতরে চলে এবং Google ডক্স অ্যাড-অন স্টোর থেকে ইনস্টল করা যেতে পারে। আপনি যদি Google ডক্সের জন্য একটি স্ক্রিপ্ট তৈরি করে থাকেন এবং এটি বিশ্বের সাথে ভাগ করতে চান, তাহলে Apps স্ক্রিপ্ট আপনাকে একটি অ্যাড-অন হিসাবে আপনার স্ক্রিপ্ট প্রকাশ করতে দেয় যাতে অন্য ব্যবহারকারীরা অ্যাড-অন স্টোর থেকে এটি ইনস্টল করতে পারে।

আপনি কীভাবে Google ডক্সের জন্য একটি অ্যাড-অন তৈরি করতে পারেন তা দেখতে, দস্তাবেজ অ্যাড-অন তৈরির জন্য কুইকস্টার্ট দেখুন।

ট্রিগার

যে স্ক্রিপ্টগুলি একটি Google ডক-এর সাথে আবদ্ধ সেগুলি নথির onOpen ইভেন্টে প্রতিক্রিয়া জানাতে একটি সাধারণ ট্রিগার ব্যবহার করতে পারে, যেটি ঘটে যখনই নথিতে সম্পাদনা করার অ্যাক্সেস থাকা ব্যবহারকারী এটি Google ডক্সে খোলে৷

ট্রিগার সেট আপ করতে, শুধু onOpen() নামে একটি ফাংশন লিখুন। এই ট্রিগারের উদাহরণের জন্য, Google Workspace-এ কাস্টম মেনু দেখুন। যদিও সাধারণ ট্রিগারটি মেনু যোগ করার জন্য উপযোগী, এটি অনুমোদনের প্রয়োজন এমন কোনো অ্যাপস স্ক্রিপ্ট পরিষেবা ব্যবহার করতে পারে না।