테이블 작업

Google Slides API를 사용하여 페이지에서 표를 만들고 수정할 수 있습니다. 이 페이지에서는 presentations.batchUpdate 메서드를 사용하여 축소하도록 요청합니다.

이 예에서는 다음 변수를 사용합니다.

  • PRESENTATION_ID: 프레젠테이션 ID를 입력합니다. 다음과 같은 작업을 할 수 있습니다. 이 ID에 대한 값을 검색합니다.
  • PAGE_ID: 페이지 객체를 제공하는 위치를 나타냅니다. ID를 참조하세요. 다음을 가져올 수 있습니다. 이 값에 대한 값을 URL에서 가져오거나 API 읽기 요청을 사용하여 가져올 수 있습니다.
  • TABLE_ID: 페이지를 제공하는 위치를 나타냅니다. 요소의 객체 ID를 이미 사용 중인 테이블입니다. 생성한 요소에 이 ID를 지정할 수 있습니다. (일부 제한사항) Slides API에서 자동으로 만들도록 허용할 수 있습니다. 요소 ID API 읽기 요청을 통해 가져올 수 있습니다.

이 예는 언어 중립을 위해 HTTP 요청으로 제공됩니다. 배우기 위해 Google API를 사용하여 다양한 언어로 일괄 업데이트를 구현하는 방법 자세한 내용은 도형 추가 및 텍스트를 입력합니다.

테이블 만들기

다음 presentations.batchUpdate 코드 샘플을 사용하여 CreateTableRequest 메서드를 사용하여 PAGE_ID로 지정된 슬라이드에 표를 추가합니다.

이 테이블에는 8개의 행과 5개의 열이 있습니다. Slides API는 이 함수의 일부로 제공된 모든 size 또는 transform 필드를 무시합니다. elementProperties 대신 API가 대략 슬라이드 중앙에 배치되고 가능한 경우 지정된 수의 행과 열을 수용할 수 있습니다.

다음은 테이블을 만드는 요청 프로토콜입니다.

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "createTable": {
        "objectId": TABLE_ID,
        "elementProperties": {
          "pageObjectId": PAGE_ID,
        },
        "rows": 8,
        "columns": 5
      }
    }
  ]
}

표의 행 또는 열 삭제

다음 presentations.batchUpdate 코드 샘플을 사용하여 DeleteTableRowRequest 메서드를 사용하여 여섯 번째 행을 삭제합니다. 그런 다음 DeleteTableColumnRequest 메서드를 사용하여 네 번째 열을 삭제합니다. 테이블은 TABLE_ID 내부의 rowIndexcolumnIndex cellLocation는 0을 기반으로 합니다.

다음은 테이블의 행 또는 열을 삭제하는 요청 프로토콜입니다.

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "deleteTableRow": {
        "tableObjectId": TABLE_ID,
        "cellLocation": {
          "rowIndex": 5
        }
      }
    },
    {
      "deleteTableColumn": {
        "tableObjectId": TABLE_ID,
        "cellLocation": {
          "columnIndex": 3
        }
      }
    }
  ]
}

테이블 데이터 수정

다음 presentations.batchUpdate 코드 샘플을 사용하여 DeleteTextRequest 메서드를 사용하여 셀 안에 있는 모든 텍스트를 textRange: 그것은 그런 다음 InsertTextRequest 메서드를 사용하여 새 텍스트인 'Kangaroo'로 바꿉니다.

테이블은 TABLE_ID로 지정됩니다. 영향을 받은 셀은 다섯 번째 행과 세 번째 열입니다. 내부의 rowIndexcolumnIndex 모두 cellLocation는 0을 기반으로 합니다.

다음은 테이블 데이터를 수정하는 요청 프로토콜입니다.

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "deleteText": {
        "objectId": TABLE_ID,
        "cellLocation": {
          "rowIndex": 4,
          "columnIndex": 2
        },
        "textRange": {
          "type": "ALL",
        }
      }
    },
    {
      "insertText": {
        "objectId": TABLE_ID,
        "cellLocation": {
          "rowIndex": 4,
          "columnIndex": 2
        },
        "text": "Kangaroo",
        "insertionIndex": 0
      }
    }
  ]
}

표 헤더 행 서식 지정

다음 presentations.batchUpdate 코드 샘플을 사용하여 UpdateTableCellPropertiesRequest 메서드를 사용하여 tableRange, TABLE_ID에서 지정됩니다. 그런 다음 TableCellProperties 메서드를 사용하여 헤더 행의 배경색을 검은색으로 설정할 수 있습니다.

이후의 각 요청은 UpdateTextStyleRequest 메서드를 사용하여 헤더 행의 한 셀에 있는 텍스트 서식을 굵은 흰색 18포인트로 설정합니다. Cambria 글꼴은 textRange 나 헤더의 각 추가 셀에 대해 이 요청을 반복해야 합니다.

rowIndexcolumnIndex 모두 locationcellLocation는 0을 기반으로 합니다.

다음은 표 헤더 행의 형식을 지정하는 요청 프로토콜입니다.

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "updateTableCellProperties": {
        "objectId": TABLE_ID,
        "tableRange": {
          "location": {
            "rowIndex": 0,
            "columnIndex": 0
          },
          "rowSpan": 1,
          "columnSpan": 3
        },
        "tableCellProperties": {
          "tableCellBackgroundFill": {
            "solidFill": {
              "color": {
                "rgbColor": {
                  "red": 0.0,
                  "green": 0.0,
                  "blue": 0.0
                }
              }
            }
          }
        },
        "fields": "tableCellBackgroundFill.solidFill.color"
      }
    },
    {
      "updateTextStyle": {
        "objectId": TABLE_ID,
        "cellLocation": {
          "rowIndex": 0,
          "columnIndex": 0
        },
        "style": {
          "foregroundColor": {
            "opaqueColor": {
              "rgbColor": {
                "red": 1.0,
                "green": 1.0,
                "blue": 1.0
              }
            }
          },
          "bold": true,
          "fontFamily": "Cambria",
          "fontSize": {
            "magnitude": 18,
            "unit": "PT"
          }
        },
        "textRange": {
          "type": "ALL"
        },
        "fields": "foregroundColor,bold,fontFamily,fontSize"
      }
    },
    // Repeat the above request for each additional cell in the header row....
  ]
}

업데이트 후 서식이 지정된 헤더 행은 다음과 같이 표시됩니다.

헤더 행 레시피 결과 서식 지정

표의 행 또는 열 삽입

다음 presentations.batchUpdate 코드 샘플을 사용하여 InsertTableRowsRequest 메서드를 사용하여 여섯 번째 행 아래에 세 행을 추가합니다. 그런 다음 InsertTableColumnsRequest 메서드를 사용하여 동일한 테이블의 네 번째 열 왼쪽에 두 개의 열을 추가합니다.

테이블은 TABLE_ID로 지정됩니다. rowIndexcellLocation 내의 columnIndex는 0을 기반으로 합니다.

다음은 표의 행 또는 열을 삽입하는 요청 프로토콜입니다.

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "insertTableRows": {
        "tableObjectId": TABLE_ID,
        "cellLocation": {
          "rowIndex": 5
        },
        "insertBelow": true,
        "number": 3
      }
    },
    {
      "insertTableColumns": {
        "tableObjectId": TABLE_ID,
        "cellLocation": {
          "columnIndex": 3
        },
        "insertRight": false,
        "number": 2
      }
    }
  ]
}