Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

369
Visualizações
Cómo obtener TextStyles/Attributes (fontColor, fontFamily, etc.) de una celda de hoja de Google en AppScript, luego configurarlo en una tabla

Tengo un Script en Googlesheets que se supone que usa la hoja como una plantilla modificable (los colores y la fuente deben ser modificables), lo copia y lo pega como una Tabla en GoogleSlides. Copia cada celda una por una y luego la coloca en la celda de la tabla de diapositivas. Mi problema es que ahora solo puedo hacer que copie el texto y el color de fondo de cada celda, no fontFamily ni fontColor.

Esta es la parte relevante del código:

 var slidesPage = SlidesApp.openById(slideID).getSlides()[slideBegin]; var rows = values.length; var columns = values[0].length; var table = slidesPage.insertTable(rows, columns); for (var r = 0; r < rows; r++) { for (var c = 0; c < columns; c++) { var cell = table.getCell(r, c); cell.getText().setText(values[r][c]); cell.getFill().setSolidFill(backgrounds[r][c]); var alignment; switch(horizontalAlignments[r][c]) { case "general-left": alignment = SlidesApp.ParagraphAlignment.START; break; case "general-right": alignment = SlidesApp.ParagraphAlignment.END; break; case "center": alignment = SlidesApp.ParagraphAlignment.CENTER; break; } //cell.getText().getParagraphStyle().setParagraphAlignment(alignment); } }

Lo he intentado con .getAttributes o cosas así, pero no puedo encontrar cómo se supone que debe funcionar. Sé que probablemente tenga que establecer una "var" con los atributos y luego agregar algo como cell.getAttributes().setAttributes() pero no estoy seguro, estoy completamente atascado.

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

No sé nada sobre diapositivas, pero en la hoja de cálculo lo que quieres es getRichTextValue() y Class TextStyle

Puede obtener los atributos de un texto en una celda de esta manera:

 function myFunction() { var ss = SpreadsheetApp.getActiveSheet(); var text = ss.getRange('a1').getRichTextValue() // .getRuns()[0]; var style = text.getTextStyle(); var size = style.getFontSize() var family = style.getFontFamily(); var color = style.getForegroundColor(); var bold = style.isBold(); var italic = style.isItalic(); // etc console.log(size, family, bold, italic, color); }

Actualizar

https://developers.google.com/apps-script/reference/slides/text-range

Sorprendentemente, no veo ningún método set... en el objeto TextRange en Diapositivas, excepto setText(text) ! Existen los métodos get... pero son bastante inútiles si no puede aplicar estos atributos.

Parece que esta parte de la API de la aplicación Slides aún no está lista.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda