Вы слышали о Google Apps Script? Впервые я познакомился с этим на встрече Google Developer Group в Бангалоре.
Apps Script помогает использовать продукты Google G Suite, выполняя сценарий, аналогичный JavaScript. С помощью всего нескольких строк кода пользователи могут выполнять задачи одним нажатием кнопки, что в противном случае заняло бы гораздо больше времени.
Сценарии Google Apps очень просты в использовании и помогают создавать сложные системы с помощью G Suite. Пользователи могут публиковать веб-приложения и создавать собственные функции для Google Slides, Sheets и Forms.
В этой статье я расскажу вам, как создать небольшое приложение, использующее Google Таблицы, Google Slides и Google Translate.
Я создал это приложение для путешественников. Когда мы посещаем зарубежные страны, общение становится проблемой из-за языковых барьеров. Люди часто берут с собой флеш-карты, чтобы общаться с местными жителями.
Мы собираемся построить именно это. Вопросы и фразы выставляются в Google Таблицах. Затем сценарий переводит строки и записывает их в Google Slides. Там!! Переведенные флешки готовы к использованию.
Теперь READY.SET.CODE
Хранение данных
Данные здесь - это предложения / слова, которые вы хотите перевести. Они хранятся в строках таблицы Google.
Итак, структура таблицы будет следующей:
- Каждая строка будет заполнена предложениями, которые вы хотите перевести.
- Второй столбец будет содержать значение, указывающее на язык, на который должны быть переведены предложения. Значение здесь - Код языка перевода Google. Если я хочу, чтобы предложения были переведены на испанский язык, код будет es.
Доступ к редактору скриптов
Сценарий для выполнения желаемой задачи написан в редакторе сценариев. Для доступа к нему перейдите в Инструменты ›Редактор скриптов. Еще один способ получить доступ к редактору скриптов - посетить Панель управления скриптами приложений и создать новый скрипт приложений. С помощью этой панели можно управлять всеми скриптами, которые пишут пользователи.
Редактор сценария содержит пустой файл с именем Code.gs. Мы напишем здесь код всего одним скриптом.
Основная функция
Мы пишем основную функцию sheetToSlide()
, в которой инициализируются активный лист и слайд. Другая функция translate()
вызывается в основной функции. Именно здесь и имеет место настоящая логика.
function sheetToSlide() { var sheet = SpreadsheetApp.getActiveSheet(); var slide = SlidesApp.create('TranslateApp'); var data = sheet.getDataRange().getValues(); var lan= data[0][1]; Logger.log(lan); for (var i=0; i<data.length; i++){ translate(i,data[i][0],lan,slide); } }
В переменной data
содержимое электронной таблицы хранится в виде многомерного массива. Доступ к этим значениям может получить data[Row][Column]
.
Они передаются в функцию translate
для дальнейшей обработки вместе с переменной slide
и language
, в которых требуется перевод.
Logger
- это класс, используемый для записи текста в консоль ведения журнала. Это очень помогает в процессе разработки кода. Вывод кода можно распечатать в журналах отладки. Чтобы просмотреть журналы, перейдите в Просмотр ›Журналы в окне редактора скриптов.
Функция перевода
В этой функции к презентации добавляются новые слайды, содержащие как оригинальные, так и переведенные предложения. Каждое предложение вставляется в новый слайд в текстовом поле.
function translate(num,data,language,slide){ var translate_lang = LanguageApp.translate(data, 'en', language); var card= slide.insertSlide(num); var shapeEnglish = card.insertShape(SlidesApp.ShapeType.TEXT_BOX, 150,100,300,60); var textEnglish = shapeEnglish.getText(); textEnglish.setText(data); textEnglish.getTextStyle().setBold(true); card.insertLine(SlidesApp.LineCategory.STRAIGHT, 200,175,300,175) var shapeTranslated = card.insertShape(SlidesApp.ShapeType.TEXT_BOX, 150,200,300,60); var textTranslated = shapeTranslated.getText(); textTranslated.setText(translate_lang); textTranslated.getTextStyle().setBold(true); }
Полученное предложение сначала переводится с помощью Google Translate, который является частью G Suite.
Будет вставлен новый слайд, содержащий предложения. На слайде текстовое поле помещается в определенное место. Вы можете изменить его, просмотрев документацию здесь.
Текст, который должен отображаться в текстовом поле, выполняется с помощью методов getText()
и setText()
. Это все свойства Google Slides, которыми вы можете управлять и настраивать по своему желанию.
Дизайн здесь выполнен очень просто. Горизонтальная линия помещается посередине с использованием метода insertLine()
для разделения исходного и переведенного текста. Свойства и переменные всех используемых методов подробно описаны в документации, предоставленной Google.
Чтобы запустить сценарий, нажмите кнопку запуска рядом со значком времени. Сценарий вызовет окно, в котором будет запрашиваться разрешение на доступ к таблицам и слайдам, просто разрешите это. Затем перейдите на свой диск, и будет готова новая презентация с переведенными предложениями на карточках.
Вот насколько полезен и прост в использовании скрипт приложений. Вы также можете заполнить базу данных Firebase Realtime, просто используя Google Таблицы. Просто написав простые скрипты в несколько строк, вы можете автоматизировать многие вещи, а также создавать веб-приложения, которые можно размещать.
Сценарии приложений действительно эффективны и нацелены на то, чтобы позволить пользователям автоматизировать свои сервисы. В следующий раз, когда вы захотите отправить электронное письмо группе людей, попробуйте использовать скрипты приложений. Как только вы освоите это, вы сможете создавать удивительные вещи, такие как Таблицы для веб-сайтов, собственный блог, Таблицы для Презентаций и многое другое.
Надеюсь, это помогло. Ваше здоровье!!
Вы можете связаться со мной!
Twitter: https://twitter.com/@s_omeal
Paybackhub: paybackhub.com и Certhive: certhive.com.