Como converter texto formatado em uma célula da tabela Powerpoint em HTML

2

Eu quero converter uma tabela em um slide do PowerPoint para HTML. Eu sei como colocar as tags de tabela, mas não posso descobrir como converter texto formatado dentro das células da tabela para HTML. Assim, por exemplo, como posso converter "Esta é uma célula com texto em negrito " para "Esta é uma célula com < b > negrito < / b > texto"?

Eu preciso ser capaz disso para texto em negrito, itálico e colorido (e, idealmente, tamanho da fonte e família de fontes). Eu realmente não quero mudar a própria célula da tabela Powerpoint, mas simplesmente montar uma string html que eu salvarei em um objeto json .

Eu sei como fazer isso no Word, definindo um Word.range e usando o método Localizar . Mas eu não consegui replicar isso no Powerpoint.

    
por Shoe 18.04.2015 / 07:56

1 resposta

1

Cada TextRange tem uma coleção Runs. Se todo o texto no intervalo for formatado de forma idêntica, haverá apenas uma execução na coleção.

Se a fonte / tamanho / cor / negritude mudar de midstream, a coleção Runs será incrementada.

Acessar cada Execução na coleção fornece um TextRange cujas propriedades da fonte você pode examinar. Suponha, por exemplo, que você tenha um texto assim (tudo em uma forma)

Este texto é todo formatado da mesma forma. Este texto inclui um pouco de texto em negrito .

Sub thing()

Dim oSh As Shape
Dim oRng As TextRange
Dim x As Long
Dim y As Long

' Assume that the shape with your text is selected
Set oSh = ActiveWindow.Selection.ShapeRange(1)

' You can look at the text in the shape as a whole,
' or paragraph by paragraph or line by line or character by character.
' Let's do it para by para

With oSh.TextFrame.TextRange
    For x = 1 To .Paragraphs.Count

        With .Paragraphs(x)
            Debug.Print "Paragraph: " & x
            For y = 1 To .Runs.Count
                Debug.Print vbTab & "Run: " & y
                Debug.Print .Runs(y).Font.Bold
            Next
        End With
    Next
End With

End Sub

Parágrafo: 1     Executar: 1  0 Parágrafo: 2     Executar: 1  0     Run: 2 -1     Run: 3  0

O primeiro parágrafo tem 1 executado apenas porque todo o texto é formatado da mesma forma. 0 = NÃO em negrito.

O segundo parágrafo tem 3 execuções (uma para cada caractere que é formatado de maneira diferente do caractere anterior). NotBold, BOLD, NotBold

    
por 19.04.2015 / 20:14