2016-11-19 7 views
0

Google Slide API를 사용하여 나를위한 슬라이드를 만든 후에'텍스트를 추가하려면 클릭하십시오 ','제목을 추가하려면 클릭하십시오 ', 텍스트가있는 텍스트 상자가 나타납니다. 그리고 2 열 측면에 대해서도, 어떻게하면 '텍스트를 추가하려면 클릭하십시오'라는 텍스트를 설정할 수 있으며, 왼쪽에서도 마찬가지입니다.Google Slide API 텍스트 대체 방법 '

프로그래밍 방식으로 해당 텍스트 상자를 찾고 원하는 텍스트를 설정할 수 있습니까?

코드는 다음과 같습니다. 1) 슬라이드를 만들고 TITLE_AND_TWO_COLUMNS 레이아웃으로 만듭니다. 2) 도형을 만들고 3) 도형에 텍스트를 삽입합니다. 나는 구글 드라이브에 슬라이드를 볼 때, 내가 볼과

 IList<Request> requests = new List<Request>(); 
     String slideId = "MyNewSlide_001"; 
     requests.Add(new Request() 
     { 
      CreateSlide = new CreateSlideRequest() 
      { 
       ObjectId = slideId, 
       InsertionIndex = 1, 
       SlideLayoutReference = new LayoutReference() 
       { 
        PredefinedLayout = "TITLE_AND_TWO_COLUMNS" 
       } 
      } 
     }); 

     String textBoxId = "MyTextBox_01"; 
     Dimension pt350 = new Dimension() 
     { 
      Magnitude = 350.0, 
      Unit = "PT", 
     }; 
     requests.Add(new Request() 
     { 
      CreateShape = new CreateShapeRequest() 
      { 
       ObjectId = textBoxId, 
       ShapeType = "TEXT_BOX", 
       ElementProperties = new PageElementProperties() 
       { 
        PageObjectId = slideId, 
        Size = new Size() 
        { 
         Height = pt350, 
         Width = pt350 
        }, 
       }, 
      } 
     }); 

     requests.Add(new Request() 
     { 
      UpdateShapeProperties = new UpdateShapePropertiesRequest() 
      { 
       ObjectId = textBoxId, 
       ShapeProperties = new ShapeProperties 
       { 
        ShapeBackgroundFill = new ShapeBackgroundFill 
        { 
         SolidFill = new SolidFill 
         { 
          Color = new OpaqueColor 
          { 
           ThemeColor = "HYPERLINK" 
          } 
         } 
        } 
       }, 
       Fields = "shapeBackgroundFill.solidFill.color,outline" 
      }, 
     }); 

     // Insert text into the box, using the object ID given to it. 
     requests.Add(new Request() 
     { 
      InsertText = new InsertTextRequest() 
      { 
       ObjectId = textBoxId, 
       InsertionIndex = 0, 
       Text = "New Box Text Inserted" 
      } 
     }); 
+0

슬라이드를 만들려면 지금까지 코드가 무엇입니까? 너 뭐 해봤 니? – Bardy

답변

1

그 상자를 '텍스트를 추가하려면 클릭'텍스트 자동 레이아웃에서 슬라이드에 복사하는 자리 표시 자 모양이다 "텍스트 추가를 클릭하십시오." 이 텍스트는 편집기에서만 볼 수 있습니다. 텍스트를 직접 삽입하지 않으면 현재의 텍스트가 없습니다.

슬라이드 API의 다른 모양과 마찬가지로 텍스트를 삽입 할 수 있습니다.

  • 가져 오기 API를 중 하나 페이지 또는 프리젠 테이션 (presentations.get 또는 presentations.pages.get)
  • 당신은 식별 할 수 있습니다. 개체 ID를 당신이에 쓰고 싶은 자리의 찾기를 참조하는 슬라이드의 각 페이지 요소에있는 을보고있는 pageElement.shape.placeholder 메시지입니다. 제목에 type = TITLE을 입력하면됩니다. 있는 InsertText 요청
  • 통화의 batchUpdate 이미 코드

이 중 일부는 설명서의 Edit text in a specified shape에 덮여에서하고있는 것처럼, 텍스트를 추가합니다.

+0

TITLE 자리 표시 자에 맞춤 레이아웃의 고유 ID를 부여 할 수 있습니까? 그렇다면 일괄 업데이트 전에 가져 오기 단계를 피할 수 있습니까? 사용자 정의가 2. ObjectId가 검색 한 후 만들기, # 1 후 GET 호출을하지 않고, 모두 같은 일괄 업데이트 요청에 제목 텍스트 을 설정 layoutId에서 1. 새 슬라이드를 만들 : 이상적으로 내가 원하는 # 2를 달성하기위한 별도의 요청. – rideon88

+0

예 - batchUpdate의'CreateSlideRequest'에있는'placeholderIdMappings' 매개 변수를보십시오. 이 특정 사례 (https://developers.google.com/slides/how-tos/create-slide#filling_in_placeholders)에 대한 몇 가지 문서가 있습니다. –