Wybór to dowolny element wybrany aktualnie na otwartej stronie prezentacji, np. rozpiętość wyróżnionego tekstu lub tabela. Ten przewodnik pokazuje, jak pobrać i ustawić wybór w aktywnej prezentacji za pomocą Apps Script.
Wybrany wybór to migawka pokazujące, co było w momencie uruchomienia skryptu. Jeśli użytkownik kliknie element, a wybór zostanie zmieniony w czasie działania skryptu, zmiany te nie zostaną odzwierciedlone.
Wybór i typ wyboru
Wybór możesz odczytać, korzystając z klasy Selection (Wybór). Klasa ma różne metody pobierania wybranych obiektów w zależności od ich typu.
Wyliczenie SelectionType reprezentuje konkretny typ wybranych obiektów. Jeśli na przykład użytkownik zaznaczył tekst w kształcie, typem wyboru będzie TEKST. W takim przypadku możesz pobrać zaznaczony zakres tekstu za pomocą metody selection.getTextRange()
.
Możesz też pobrać obiekt zawierający zaznaczony tekst. W przykładzie powyżej możesz pobrać kształt zawierający zaznaczony tekst za pomocą polecenia selection.getPageElementRange().getPageElements()[0]
. I podobnie, strona zawierająca kształt obramowania jest bieżącą stroną aktywną. Aby ją pobrać, użyj polecenia selection.getCurrentPage()
.
Odczytuję zaznaczenia
Aby odczytać wybór, użyj metody Presentation.getSelection(), jak w tym przykładzie:
Odczytywanie bieżącej strony
Aby pobrać bieżącą stronę wyświetlaną przez użytkownika, użyj metod getSelection() i getCurrentPage() w ten sposób:
Pamiętaj, że bieżąca strona może być dowolnego z tych typów:
Na bieżącej stronie może być zaznaczony 1 lub więcej obiektów, a Typ wyboru określa typ wyboru.
Odczytywanie wyboru na podstawie typu wyboru
Poniższy przykład pokazuje, jak za pomocą typu wyboru odczytać wybrane elementy w sposób odpowiedni do danego typu.
Zaznaczony tekst do czytania
Zaznaczony tekst możesz odczytać przy użyciu metody Selection.getTextRange(). Dostępne są 2 rodzaje zaznaczania tekstu:
- Wybór zakresu: jeśli kształt zawiera tekst „Hello” i wybrano „He”, zwrócony zakres ma wartość startIndex=0 i endIndex=2.
- Wybór kursora: jeśli kształt zawiera tekst „Hello”, a kursor znajduje się po „H” („H|ello”), zwrócony zakres jest pusty z wartościami startIndex=1 i endIndex=1.
Zmieniam wybór
Skrypt może zmienić wybór użytkownika. Wszelkie zmiany wyboru dokonane przez skrypt w prezentacji są odzwierciedlane w kolejnych operacjach wyboru przez cały czas wykonywania skryptu.
Zmiany wyboru są odzwierciedlane w przeglądarce użytkownika dopiero po zakończeniu wykonywania skryptu lub po wywołaniu funkcji Presentation.saveAndClose()
.
Wybieranie bieżącej strony
Stronę aktywnej prezentacji można wybrać jako bieżącą, wywołując metodę selectAsCurrentPage(). Ta metoda usuwa wcześniej zaznaczone elementy strony, strony i teksty. Ta metoda pozwala więc odznaczyć wszystkie elementy na stronie. Na przykład:
Wybieranie elementu strony
Aby wybrać element strony na stronie, użyj metody PageElement.select(). Spowoduje to też odznaczenie wszystkich wcześniej wybranych elementów strony.
Na przykład:
Wybieranie wielu elementów strony
Aby dołączyć do zaznaczenia kolejne elementy strony, użyj metody PageElement.select(false). Wszystkie elementy strony muszą znajdować się na bieżącej stronie.
Przekształcanie wyboru
Zmiany wprowadzane przez skrypt mogą przekształcić bieżący wybór, tak aby wybrane zmiany ulegały zmianie. Na przykład:
- Załóżmy, że masz wybrane 2 kształty A i B.
- Następnie skrypt usuwa kształt A.
- W rezultacie zaznaczenie zostanie przekształcone w odniesieniu do zmiany, tak aby wybrany był tylko kształt B.
Z przykładu poniżej dowiesz się, jak zmienić wybrane elementy, modyfikując wybrane elementy strony.
Zaznaczanie tekstu
Tekst zawarty w kształcie lub komórce tabeli można zaznaczyć za pomocą metody TextRange.select(). Jeśli tekst znajduje się w kształcie, zostanie on również zaznaczony. Jeśli tekst znajduje się w komórce tabeli, wybrana jest komórka tabeli i jej tabela zamykająca.
Spowoduje to też ustawienie strony nadrzędnej jako bieżącej.
Wybór zakresu w kształcie
Poniższy przykład pokazuje, jak zaznaczyć zakres w tekście zawartym w kształcie.
Wybór kursora w kształcie
Poniższy przykład pokazuje, jak wybrać kursor w tekście zawartym w kształcie.
Wybór zakresu w komórce tabeli
Poniższy przykład pokazuje, jak zaznaczyć zakres w tekście zawartym w komórce tabeli.
Wybór kursora w komórce tabeli
Z przykładu poniżej dowiesz się, jak za pomocą kursora zaznaczyć tekst zawarty w komórce tabeli.
Przekształcenie zaznaczenia ze zmianami w tekście
Poniższy przykład pokazuje, jak można przekształcić zaznaczony tekst, edytując go.
Odznaczanie
Nie ma konkretnych metod odznaczania tekstu lub elementów strony. Ten wynik można jednak uzyskać za pomocą metod Page.selectAsCurrentPage()
lub pageElement.select()
.
Wybierz bieżącą stronę
Z poniższego przykładu dowiesz się, jak odznaczyć bieżące zaznaczenie na stronie, ustawiając ją jako stronę bieżącą.
Wybierz element strony
Z przykładu poniżej dowiesz się, jak anulować wybór bieżących elementów na stronie, wybierając jeden element strony i usuwając z niego wszystkie pozostałe elementy.