Przydatnym zastosowaniem interfejsu API Prezentacji Google jest scalanie informacji z jednego lub kilku źródeł danych w formę prezentacji.
Na tej stronie opisujemy, jak pobrać dane z zewnętrznego źródła i wstawić je w dotychczasowej prezentacji szablonu. Działa to podobnie do kreatora e-maili za pomocą edytora tekstu i arkusza kalkulacyjnego.
Ta metoda jest przydatna z kilku powodów:
Projektanci mogą z łatwością dostosowywać projekt do swoich potrzeb za pomocą edytora Prezentacji Google. To znacznie łatwiejsze niż dostrajanie parametrów w aplikacji w celu ustawienia renderowanego projektu slajdu.
Oddzielenie treści od prezentacji to dobrze znana zasada projektowania, która ma wiele zalet.
Podstawowy przepis
Oto przykład, jak za pomocą interfejsu Prezentacji API można scalić dane w prezentację:
Utwórz prezentację tak, jak chcesz, korzystając z zastępczych treści, które pomogą Ci w projektowaniu.
W przypadku każdego elementu treści, który chcesz wstawić, zastąp treść zastępczą tagiem. Tagi to pola tekstowe lub kształty z unikalnym ciągiem znaków. Pamiętaj, by używać ciągów znaków, które nie występują normalnie. Dobrym tagiem może być np.
{{account-holder-name}}
.Użyj interfejsu Google Drive API w kodzie, aby utworzyć kopię prezentacji.
W kodzie użyj metody
batchUpdate
interfejsu Prezentacji Google z zestawem żądańreplaceAllText
, aby zastąpić wszystkie wystąpienia tekstu w całej prezentacji. Używaj żądańreplaceAllShapesWithImage
, aby zastępować obrazy w całej prezentacji.
Gdy utworzysz prezentację z tagami, zrób jej kopię i dostosuj ją za pomocą interfejsu Prezentacji API. Nie używaj interfejsu Prezentacji API do manipulowania podstawową treścią szablonu.
Sekcje poniżej zawierają fragmenty kodu ilustrujące część tego procesu. Możesz też obejrzeć powyższy film, aby zapoznać się z pełnym przykładem (Python) łączącym kilka pojęć z poszczególnych sekcji poniżej.
Scal tekst
Za pomocą żądania replaceAllText
możesz zastąpić wszystkie wystąpienia danego ciągu tekstowego w prezentacji nowym tekstem. Jeśli chodzi o scalanie, jest to prostsze
niż znalezienie i zastępowanie każdego wystąpienia tekstu z osobna. Jedną z powodów jest najbardziej wyrafinowana metoda, ponieważ trudno przewidzieć identyfikatory elementów strony, zwłaszcza gdy współpracownicy dopracowują i obsługują prezentację szablonu.
Przykład
W tym przykładzie interfejs Drive API umożliwia skopiowanie szablonu prezentacji i utworzenie jej nowej instancji. Następnie odczytuje dane z arkusza kalkulacyjnego za pomocą interfejsu API Arkuszy Google, a na koniec używa interfejsu Prezentacji API do aktualizacji nowej prezentacji.
Przykład pobiera dane z 3 komórek w jednym wierszu nazwanego zakresu w arkuszu kalkulacyjnym. Następnie zastępuje te dane w prezentacji wszędzie tam, gdzie występują ciągi znaków {{customer-name}}
, {{case-description}}
lub {{total-portfolio}}
.
Google Apps Script
Go
Java
JavaScript
Node.js
PHP
Python
Ruby
Scal obrazy
Możesz też scalić obrazy w prezentację za pomocą żądania replaceAllShapesWithImage
. To żądanie zastępuje wszystkie wystąpienia kształtów zawierających podany ciąg tekstowy przedstawionym obrazem. Żądanie automatycznie pozycjonuje i skaluje obraz, tak by pasował do granic kształtu tagu, przy zachowaniu współczynnika proporcji obrazu.
Przykład
W tym przykładzie interfejs Google Drive API pozwala skopiować szablon prezentacji i utworzyć jej nowe wystąpienie. Następnie używa interfejsu Prezentacji API, aby znaleźć dowolny kształt z tekstem {{company-logo}}
i zastąpić go obrazem logo firmy. Żądanie zastępuje też dowolny kształt tekstem {{customer-graphic}}
innym obrazem.
Google Apps Script
Go
Java
JavaScript
Node.js
PHP
Python
Ruby
Zastąp określone pola tekstowe lub wystąpienia obrazów
Żądania replaceAllText
i replaceAllShapesWithImage
przydają się do zastępowania tagów w całej prezentacji, ale czasami wystarczy zastąpić elementy zgodnie z innymi kryteriami, na przykład znajdującymi się na konkretnym slajdzie.
W takich przypadkach musisz pobrać identyfikatory kształtów tagów, które chcesz zastąpić. Aby wstawić nowy tekst, usuń znajdujący się w nim tekst (patrz przykład Edytowanie tekstu w określonym kształcie).
Zastępowanie obrazów jest bardziej skomplikowane. Aby scalić obraz:
- Pobierz identyfikator kształtu tagu.
- Skopiuj rozmiar i przekształć informacje z tagu.
- Dodaj obraz do strony, używając informacji o rozmiarze i przekształceniu.
- Usuń kształt tagu.
Zachowanie współczynnika proporcji obrazu przy jednoczesnym skalowaniu go do odpowiedniego rozmiaru może wymagać zachowania ostrożności, co opisano w sekcji poniżej. Zobacz też ten przykład: Zastępowanie tagu kształtu obrazem.
Zachowaj format obrazu
Gdy tworzysz obrazy za pomocą interfejsu Prezentacji API, dopasowanie proporcji zależy tylko od rozmiaru obrazu, a nie na podstawie rozmiaru i danych przekształcenia. Dane o rozmiarze podane w żądaniu createImage
są uznawane za pożądany rozmiar obrazu. Interfejs API dopasowuje współczynnik proporcji obrazu do żądanego rozmiaru, a potem stosuje dostarczone przekształcenie.
Zastępując tag obrazem, możesz zachować współczynnik proporcji obrazu, ustawiając jego rozmiar i skalowanie w ten sposób:
- width: ustaw iloczyn wartości
width
iscaleX
tagu - height: ustaw iloczyn wartości
height
iscaleY
tagu - scale_x: ustaw na
1
- scale_y: ustaw wartość
1
.
W efekcie interfejs API Prezentacji dopasowuje wygląd obrazu do rozmiaru obrazu, a nie jego rozmiaru nieskalowanego (patrz Zastępowanie tagu kształtu obrazem).
Ustawienie parametrów skalowania na 1
zapobiega dwukrotnemu skalowaniu obrazu.
Takie ułożenie pozwala zachować współczynnik proporcji obrazu i zapobiega przekraczaniu rozmiaru kształtu tagu. Obraz ma ten sam punkt środkowy co kształt tagu.
Zarządzaj szablonami
Na potrzeby prezentacji szablonów zdefiniowanych i należących do aplikacji utwórz szablon za pomocą dedykowanego konta reprezentującego aplikację. Dobrym rozwiązaniem są konta usługi, które pozwalają uniknąć komplikacji związanych z zasadami Google Workspace, które ograniczają udostępnianie.
Gdy tworzysz instancje prezentacji na podstawie szablonów, zawsze używaj danych logowania użytkownika. Zapewnia to użytkownikom pełną kontrolę nad wynikową prezentacją i zapobiega problemom ze skalowaniem związanych z limitami na użytkownika na Dysku Google.
Aby utworzyć szablon za pomocą konta usługi, wykonaj te czynności z użyciem danych logowania do aplikacji:
- Utwórz prezentację, korzystając z metody presentations.create w interfejsie Prezentacji API.
- Zaktualizuj uprawnienia, aby umożliwić odbiorcom prezentacji jej odczytanie za pomocą polecenia permissions.create w interfejsie Drive API.
- Zaktualizuj uprawnienia, aby zezwolić autorom szablonów na zapis w nich za pomocą polecenia permissions.create w interfejsie Drive API.
- W razie potrzeby zmodyfikuj szablon.
Aby utworzyć instancję prezentacji, wykonaj te czynności przy użyciu danych logowania użytkownika:
- Utwórz kopię szablonu, korzystając z polecenia files.copy w interfejsie Drive API.
- Zastąp wartości za pomocą elementu presentation.batchUpdate w interfejsie Prezentacji API.