테이블 작업

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
      }
    }
  ]
}