API Google Trang trình bày cho phép bạn tạo và chỉnh sửa
PageElement
tài nguyên, bao gồm hộp văn bản, hình ảnh, bảng, hình dạng cơ bản, đường kẻ và
video được nhúng. Các ví dụ trên trang này trình bày một số phần tử trang phổ biến
bằng cách sử dụng
presentations.batchUpdate
.
Những ví dụ này sử dụng các biến sau:
- PRESENTATION_ID – Cho biết nơi bạn cung cấp bản trình bày Mã nhận dạng. Bạn có thể truy xuất giá trị cho mã nhận dạng này từ URL của bản trình bày.
- PAGE_ID – Cho biết vị trí bạn cung cấp đối tượng trang Mã nhận dạng. Bạn có thể truy xuất giá trị cho việc này từ URL hoặc bằng cách sử dụng yêu cầu đọc API.
- PAGE_ELEMENT_ID—Cho biết nơi bạn cung cấp trang mã đối tượng phần tử. Bạn có thể chỉ định ID này cho các phần tử bạn tạo (với một số hạn chế) hoặc cho phép API Trang trình bày tự động tạo trang trình bày. Mã phần tử có thể được truy xuất thông qua yêu cầu đọc API.
Những ví dụ này được trình bày dưới dạng yêu cầu HTTP nhằm đảm bảo trung lập về ngôn ngữ. Để tìm hiểu cách triển khai việc cập nhật theo lô bằng nhiều ngôn ngữ bằng Google API thư viện ứng dụng, hãy xem các hướng dẫn sau:
Thêm danh sách có dấu đầu dòng vào hộp văn bản
Nội dung sau đây
presentations.batchUpdate
mã mẫu cho biết cách sử dụng
InsertTextRequest
để chèn văn bản vào một hộp văn bản trống được chỉ định bởi
PAGE_ELEMENT_ID. Sau đó, mẫu này sử dụng phương pháp
CreateParagraphBulletsRequest
để chuyển đổi tất cả văn bản trong hộp văn bản thành danh sách có dấu đầu dòng. Các mục trong danh sách
được phân tách bằng \n
ký tự, trong khi thụt lề được kiểm soát bằng \t
ký tự.
Sau đây là giao thức yêu cầu để tạo bản trình bày:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "insertText": { "objectId": PAGE_ELEMENT_ID, "text": "My List\n\tItem 1\n\t\tItem 2\n\t\t\tItem 3", "insertionIndex": 0 }, "createParagraphBullets": { "objectId": PAGE_ELEMENT_ID, "bulletPreset": "BULLET_ARROW_DIAMOND_DISC", "textRange": { "type": "ALL" } } } ] }
Yêu cầu này có thể tạo một danh sách có dấu đầu dòng như sau:
Thêm hình dạng vào trang trình bày
Nội dung sau đây
presentations.batchUpdate
mã mẫu cho biết cách sử dụng
CreateShapeRequest
để thêm hình dạng sóng vào một trang trình bày do PAGE_ID chỉ định.
Yêu cầu này chỉ định loại hình dạng, sau đó điều chỉnh theo tỷ lệ và đặt hình dạng theo
trang trình bày. Sau đó, dịch vụ này sử dụng
InsertTextRequest
để thêm văn bản vào hình dạng đó. Yêu cầu đặt mã nhận dạng của đường kẻ thành
PAGE_ELEMENT_ID.
Sau đây là giao thức yêu cầu thêm hình dạng vào trang trình bày:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "createShape": { "objectId": PAGE_ELEMENT_ID, "elementProperties": { "pageObjectId": PAGE_ID, "size": { "width": { "magnitude": 3000000, "unit": "EMU" }, "height": { "magnitude": 3000000, "unit": "EMU" } }, "transform": { "scaleX": 0.6807, "scaleY": 0.4585, "translateX": 6583050, "translateY": 1673950, "unit": "EMU" } }, "shapeType": "WAVE" } }, { "insertText": { "objectId": PAGE_ELEMENT_ID, "text": "My Wave Shape", "insertionIndex": 0 } } ] }
Thêm video vào trang trình bày
Nội dung sau đây
presentations.batchUpdate
mã mẫu cho biết cách sử dụng
CreateVideoRequest
để nhúng video vào một trang trình bày do PAGE_ID chỉ định.
Yêu cầu này điều chỉnh tỷ lệ và định vị video trong trang trình bày, đồng thời đặt
Mã nhận dạng cho PAGE_ELEMENT_ID. Giá trị nhận dạng duy nhất của video nguồn là
được đặt thành VIDEO_ID. Ví dụ: video trên YouTube tại
https://www.youtube.com/watch?v=7U3axjORYZ0
có mã nhận dạng 7U3axjORYZ0
.
Sau đây là giao thức yêu cầu thêm video vào trang trình bày:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "createVideo": { "objectId": PAGE_ELEMENT_ID, "elementProperties": { "pageObjectId": PAGE_ID, "size": { "width": { "magnitude": 12000, "unit": "EMU" }, "height": { "magnitude": 9000, "unit": "EMU" } }, "transform": { "scaleX": 381, "scaleY": 381, "translateX": 152400, "translateY": 152400, "unit": "EMU" } }, "source": "YOUTUBE", "id": VIDEO_ID } } ] }
Sao chép và chỉnh sửa phần tử
Nội dung sau đây
presentations.batchUpdate
mã mẫu cho biết cách sử dụng
DuplicateObjectRequest
để có hình dạng hiện có (được chỉ định bởi
PAGE_ELEMENT_ID) và tạo một bản sao (được chỉ định bởi
COPY_ELEMENT_ID).
Các yêu cầu tiếp theo sau đó thực hiện các thay đổi sau đây đối với đối tượng trùng lặp:
- Đặt màu nền thành màu giao diện
LIGHT2
. - Di chuyển bản sao xuống dưới trang (từ vị trí của hình dạng ban đầu).
- Đặt phông chữ văn bản thành Georgia 18 pt.
- Chỉnh sửa văn bản thành "Bản sao hình dạng của tôi".
Các yêu cầu ở đây sử dụng mặt nạ trường để duy trì các thuộc tính hình dạng không thay đổi (chẳng hạn như kiểu đường viền). Sử dụng mặt nạ trường cũng cải thiện hiệu suất.
Để biết thêm thông tin về cách sao chép trang trình bày, hãy xem mẫu Sao chép trang trình bày.
Sau đây là giao thức yêu cầu để sao chép và chỉnh sửa một phần tử:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "duplicateObject": { "objectId": PAGE_ELEMENT_ID, "objectIds": { PAGE_ELEMENT_ID: COPY_ELEMENT_ID } } }, { "updateShapeProperties": { "objectId": COPY_ELEMENT_ID, "fields": "shapeBackgroundFill.solidFill.color", "shapeProperties": { "shapeBackgroundFill": { "solidFill": { "color": { "themeColor": "LIGHT2" } } } } } }, { "updatePageElementTransform": { "objectId": COPY_ELEMENT_ID, "applyMode": "RELATIVE", "transform": { "scaleX": 1, "scaleY": 1, "translateX": 0, "translateY": 1250000, "unit": "EMU" } } }, { "updateTextStyle": { "objectId": COPY_ELEMENT_ID, "fields": "fontFamily,fontSize", "textRange": { "type": "ALL" }, "style": { "fontFamily": "Georgia", "fontSize": { "magnitude": 18, "unit": "PT" } } } }, { "deleteText": { "objectId": COPY_ELEMENT_ID, "textRange": { "type": "ALL" } } }, { "insertText": { "objectId": COPY_ELEMENT_ID, "text": "My Shape Copy", "insertionIndex": 0 } } ] }
Sau đây là ví dụ về cách hình dạng và bản sao của hình dạng đó sau khi được cập nhật:
Chỉnh sửa hình ảnh hoặc đường viền video
Nội dung sau đây
presentations.batchUpdate
mã mẫu cho biết cách sử dụng
UpdateImagePropertiesRequest
để cập nhật hình ảnh đường viền của một hình ảnh được chỉ định bởi
IMAGE_ELEMENT_ID. Công cụ này cũng sử dụng
UpdateVideoPropertiesRequest
để cập nhật giao diện đường viền của một video được nhúng do
VIDEO_ELEMENT_ID.
Các yêu cầu này sẽ thực hiện các thay đổi sau đây đối với đối tượng:
- Đặt màu đường viền hình ảnh thành màu giao diện
ACCENT5
với một phần trong suốt. - Đặt màu đường viền video thành màu giao diện
ACCENT1
mà không trong suốt. - Đặt trọng số đường viền thành 3 pt cho cả hai.
- Đặt kiểu đường viền hình ảnh thành
SOLID
. - Đặt kiểu đường viền video thành
DASH_DOT
.
Cả phương thức UpdateImagePropertiesRequest
và
Phương thức UpdateVideoPropertiesRequest
chỉ có thể thay đổi giao diện của hình ảnh
và bố cục video. Tất cả các tài sản khác đang ở chế độ chỉ có thể đọc. Các yêu cầu ở đây sử dụng
mặt nạ trường để chỉ định rằng chỉ đường viền
phải được thay đổi để bảo vệ mã khỏi các thay đổi API trong tương lai. Sử dụng trường
khẩu trang cũng cải thiện hiệu suất.
Sau đây là giao thức yêu cầu để chỉnh sửa đường viền hình ảnh hoặc video:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "updateImageProperties": { "objectId": IMAGE_ELEMENT_ID, "fields": "outline", "imageProperties": { "outline": { "dashStyle": "SOLID", "outlineFill": { "solidFill": { "alpha": 0.8, "color": { "themeColor": "ACCENT5" } } }, "weight": { "magnitude": 3, "unit": "PT" } } } } }, { "updateVideoProperties": { "objectId": VIDEO_ELEMENT_ID, "fields": "outline", "videoProperties": { "outline": { "dashStyle": "DASH_DOT", "outlineFill": { "solidFill": { "alpha": 0.8, "color": { "themeColor": "ACCENT1" } } }, "weight": { "magnitude": 3, "unit": "PT" } } } } } ] }
Sau đây là ví dụ về giao diện của hình ảnh và video được nhúng sau những lần cập nhật này:
Chỉnh sửa đường viền của hình dạng
Nội dung sau đây
presentations.batchUpdate
mã mẫu cho biết cách sử dụng
UpdateShapePropertiesRequest
để có hình dạng hiện có (được chỉ định bởi
PAGE_ELEMENT_ID) và cập nhật hình thức của đường viền.
Các yêu cầu này sẽ thực hiện các thay đổi sau đây đối với đối tượng:
- Đặt màu đường viền thành màu giao diện
ACCENT5
với một phần trong suốt. - Đặt độ đậm đường viền thành 3-pt.
- Đặt kiểu đường viền thành
LONG_DASH
.
Các yêu cầu ở đây sử dụng mặt nạ trường để duy trì các thuộc tính hình dạng không thay đổi (chẳng hạn như màu nền của hình dạng). Sử dụng mặt nạ trường cũng cải thiện hiệu suất.
Sau đây là giao thức yêu cầu để chỉnh sửa đường viền của một hình:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "updateShapeProperties": { "objectId": PAGE_ELEMENT_ID, "fields": "outline", "shapeProperties": { "outline": { "dashStyle": "LONG_DASH", "outlineFill": { "solidFill": { "alpha": 0.6, "color": { "themeColor": "ACCENT5" } } }, "weight": { "magnitude": 3, "unit": "PT" } } } } } ] }
Sau đây là ví dụ về cách hình dạng sau khi cập nhật:
Định dạng văn bản trong hình dạng hoặc hộp văn bản
Nội dung sau đây
presentations.batchUpdate
mã mẫu cho biết cách sử dụng
UpdateTextStyleRequest
để có hình dạng hiện có (được chỉ định bởi
PAGE_ELEMENT_ID) và cập nhật hình thức văn bản.
Các yêu cầu này sẽ thực hiện các thay đổi sau đây đối với đối tượng:
- Đặt màu văn bản thành màu giao diện
ACCENT5
. - Đặt phông chữ thành đậm, in nghiêng Corsiva 18 pt.
- Gạch chân văn bản.
Các yêu cầu ở đây sử dụng mặt nạ trường để duy trì các thuộc tính kiểu văn bản không thay đổi (chẳng hạn như màu nền, đường liên kết hoặc độ lệch cơ sở). Việc sử dụng mặt nạ trường cũng cải thiện hiệu suất.
Sau đây là giao thức yêu cầu định dạng văn bản có dạng hình dạng hoặc hộp văn bản:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "updateTextStyle": { "objectId": PAGE_ELEMENT_ID, "fields": "foregroundColor,bold,italic,fontFamily,fontSize,underline", "style": { "foregroundColor": { "opaqueColor": { "themeColor": "ACCENT5" } }, "bold": true, "italic": true, "underline": true, "fontFamily": "Corsiva", "fontSize": { "magnitude": 18, "unit": "PT" } }, "textRange": { "type": "ALL" } } } ] }
Sau đây là ví dụ về dạng văn bản có thể hiển thị sau những lần cập nhật này:
Nhập biểu đồ từ Google Trang tính
Nội dung sau đây
presentations.batchUpdate
mã mẫu cho biết cách sử dụng
CreateSheetsChartRequest
để nhập biểu đồ từ một trang tính và đặt biểu đồ đó lên một trang trình bày được chỉ định bởi
PAGE_ID.
Yêu cầu cần có mã nhận dạng bảng tính (được chỉ định bởi SPREADSHEET_ID) và mã biểu đồ bảng tính (được chỉ định bởi SPREADSHEET_CHART_ID). Mã biểu đồ trong Bản trình bày trên Trang trình bày được chỉ định bởi PRESENTATION_CHART_ID.
Yêu cầu này cũng đặt
LinkingMode
của biểu đồ trên Trang trình bày lên LINKED
để bạn có thể cập nhật
biểu đồ được nhúng nếu biểu đồ trên bảng tính nguồn được cập nhật.
Sau đây là giao thức yêu cầu để nhập biểu đồ Trang tính:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "createSheetsChart": { "objectId": PRESENTATION_CHART_ID, "spreadsheetId": SPREADSHEET_ID, "chartId": SPREADSHEET_CHART_ID, "linkingMode": "LINKED", "elementProperties": { "pageObjectId": PAGE_ID, "size": { "width": { "magnitude": 4000000, "unit": "EMU" }, "height": { "magnitude": 4000000, "unit": "EMU" } }, "transform": { "scaleX": 1, "scaleY": 1, "translateX": 100000, "translateY": 100000, "unit": "EMU" } } } ] }
Làm mới một biểu đồ trong Trang tính
Nội dung sau đây
presentations.batchUpdate
mã mẫu cho biết cách sử dụng
RefreshSheetsChartRequest
để làm mới biểu đồ được liên kết trong một bản trình bày, thay thế biểu đồ đó bằng biểu đồ mới nhất
phiên bản của biểu đồ đó từ bảng tính nguồn trên Trang tính. Chiến lược phát hành đĩa đơn
cần có mã biểu đồ trong bản trình bày trên Trang trình bày
(do PRESENTATION_CHART_ID chỉ định).
Sau đây là giao thức yêu cầu để làm mới biểu đồ từ Trang tính:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "refreshSheetsChart": { "objectId": PRESENTATION_CHART_ID } } ] }