Gerenciar Porções de Texto em Apresentações no Android

Introdução

Uma porção de texto representa um fragmento específico de texto dentro de um parágrafo e permite que você trabalhe com esse fragmento de forma independente do conteúdo ao redor. No Aspose.Slides, as porções podem ser usadas quando você precisa obter a posição de um fragmento de texto, aplicar formatação apenas a parte de um parágrafo ou controlar o comportamento do texto em um nível mais detalhado.

Obter coordenadas de uma porção de texto

getCoordinates() O método foi adicionado às classes IPortion e Portion e permite recuperar as coordenadas do início da porção.

// Instanciar a classe Presentation que representa o PPTX
Presentation pres = new Presentation();
try {
    // Reformulando o contexto da apresentação
    IAutoShape shape = (IAutoShape) pres.getSlides().get_Item(0).getShapes().get_Item(0);
    
    ITextFrame textFrame = (ITextFrame) shape.getTextFrame();
    
    for (IParagraph paragraph : textFrame.getParagraphs()) 
    {
        for (IPortion portion : paragraph.getPortions()) 
        {
            Point2D.Float point = portion.getCoordinates();
            System.out.println("X: " + point.x + " Y: " + point.y);
        }
    }
} finally {
    if (pres != null) pres.dispose();
}

Perguntas frequentes

Posso aplicar um hyperlink apenas a parte do texto dentro de um único parágrafo?

Sim, você pode atribuir um hyperlink a uma porção individual; apenas esse fragmento será clicável, não o parágrafo inteiro.

Como funciona a herança de estilo: o que uma Portion substitui e o que é herdado do Paragraph/TextFrame?

As propriedades ao nível da Portion têm a precedência mais alta. Se uma propriedade não estiver definida na Portion, o mecanismo a obtém do Paragraph; se também não estiver definida lá, do TextFrame ou do estilo do theme.

O que acontece se a fonte especificada para uma Portion estiver ausente na máquina/servidor de destino?

As regras de substituição de fontes são aplicadas. O texto pode ser realinhado: métricas, hifenização e largura podem mudar, o que importa para posicionamento preciso.

Posso definir transparência ou gradiente de preenchimento de texto específico de uma Portion independentemente do resto do parágrafo?

Sim, a cor do texto, o preenchimento e a transparência ao nível da Portion podem ser diferentes dos fragmentos vizinhos.