think-cell usa cor de fonte incorreta
Problema
O think-cell não usa a cor de texto principal definida no modelo do PowerPoint.
Solução
Esse problema é causado por um erro de programação do PowerPoint. A partir de julho de 2017, a Microsoft solucionou o problema no Office 365 e no Office 2016. As edições “Clique para executar” (Click-to-Run) do Office 365 e do Office 2016 receberam a correção com a atualização para a Versão 1706 (Build 8229.2073). A correção da edição baseada em MSI do Office 2016 foi incluída no KB3203481.
Explicação e solução alternativa caso sua versão do Office não tenha sido corrigida
think-cell tenta determinar a cor de fonte correta com base nas cores de fonte que o seu modelo de PowerPoint fornece. As versões do PowerPoint contendo erro de programação informam ao think-cell valores incorretos para a cor de fonte se estiver faltando alguns espaços reservados no slide de nível superior do slide mestre. Esse problema pode ser reproduzido sem o think-cell.
Reprodução sem o think-cell
A macro a seguir insere um novo slide com uma caixa de texto mostrando os valores da cor da fonte resultantes para cada Nível de Estilo de Texto do seu slide mestre do PowerPoint. "TextStyleLevel[1]" mostra a cor da fonte principal fornecida pelo PowerPoint.
- Abra o arquivo do PowerPoint afetado e abra o editor VBA com Alt + F11
- No editor VBA, selecione a sua apresentação e clique em Inserir → Novo módulo
- Cole a macro a seguir e feche o Editor VBA.
- Na janela de apresentação do PowerPoint, pressione Alt + F8 para abrir a janela Macro
- Selecione Demonstrar e clique em Executar
Function AppendToTextRange(txtfrm2 As PowerPoint.TextFrame2) As Office.TextRange2
Set AppendToTextRange = _
txtfrm2.TextRange.Characters(txtfrm2.TextRange.Length + 1, 0)
End Function
Sub Demonstrate()
Dim pres As PowerPoint.Presentation
Set pres = ActivePresentation
Dim sld As PowerPoint.Slide
Set sld = pres.Slides.Add(pres.Slides.Count + 1, PowerPoint.ppLayoutBlank)
sld.Select
Dim mstr As PowerPoint.Master
Set mstr = sld.Design.SlideMaster
Dim shp As PowerPoint.Shape
Set shp = sld.Shapes.AddShape(Office.msoShapeRectangle, 50, 50, _
pres.PageSetup.SlideWidth / 2 - 50, pres.PageSetup.SlideHeight - 100)
shp.Fill.ForeColor.RGB = RGB(255, 255, 122) 'light yellow backgound
Dim txtfrm2 As PowerPoint.TextFrame2
Set txtfrm2 = shp.TextFrame2
Dim txtrng2 As Office.TextRange2
Dim i As Integer
i = 1
Dim txtlvl As PowerPoint.TextStyleLevel
For Each txtlvl In mstr.TextStyles(PowerPoint.ppBodyStyle).Levels
Set txtrng2 = AppendToTextRange(txtfrm2)
txtrng2.Text = "TextStyleLevel[" & i & "] has color " & vbCr
txtrng2.Font.Fill.Solid
txtrng2.Font.Fill.ForeColor.ObjectThemeColor = Office.msoThemeColorText1
Set txtrng2 = AppendToTextRange(txtfrm2)
Dim col As PowerPoint.ColorFormat
Set col = txtlvl.Font.Color
If PowerPoint.ppSchemeColorMixed = col.Type Then
txtrng2.Text = "MIXED (should not occur)" & vbCr & vbCr
Else
If Office.msoNotThemeColor = col.ObjectThemeColor Then
Dim nRgb As Long
nRgb = col.RGB()
txtrng2.Text = "RGB: " & (nRgb Mod 256) & "/" & ((nRgb \ 256) _
Mod 256) & "/" & (nRgb \ 256 \ 256) & vbCr & vbCr
txtrng2.Font.Fill.ForeColor.RGB = nRgb
Else
txtrng2.Text = "ObjectThemeColor: " & col.ObjectThemeColor _
& vbCr & vbCr
txtrng2.Font.Fill.ForeColor.ObjectThemeColor = col.ObjectThemeColor
End If
End If
i = i + 1
Next txtlvl
End Sub
Solução alternativa
Insira os espaços reservados no slide mestre da sua apresentação do PowerPoint:
- Abra o slide mestre: PowerPoint → Exibir → Exibições mestres → Slide mestre
- Vá para o slide de nível superior na barra lateral da miniatura
- Na maioria dos casos, o problema pode ser resolvido inserindo-se o Texto faltante e/ou o marcador de posição Título:
Layout mestre → Layout mestre → marque Texto e/ou Título → OK - Feche o slide mestre: Fechar → Fechar exibição mestre
- Insira um novo gráfico ou atualize os gráficos existentes, por exemplo, arrastando-os até uma nova posição
Se o problema persistir depois disso, repita essas etapas, mas assinale todos os marcadores de posição faltando na etapa 3. Os modelos ou apresentações podem conter mais do que um slide mestre afetado. Aplique a solução alternativa a todos eles.
Recomenda-se incluir essa solução alternativa ao seu Modelo de PowerPoint ou entrar em contato com a pessoa responsável pelos seus modelos de PowerPoint para atualizar o modelo padrão.
Se sua empresa tiver um contrato de suporte do Microsoft Office e você desejar entrar em contato com a Microsoft para solicitar uma correção, favor mencionar seu número de caso da Microsoft 116080514511540.
Entre em contato com o suporte
Se o think-cell ainda não usar a cor de fonte correta, embora você esteja usando uma versão do Office corrigida ou tiver aplicado uma solução alternativa, favor enviar um slide de exemplo para nossa equipe de suporte e nos informar a cor de fonte que prefere.