Personalizar legendas de gráficos em apresentações no .NET
Visão geral
Aspose.Slides oferece opções para personalizar legendas de gráficos em apresentações do PowerPoint. Este artigo mostra como posicionar e dimensionar uma legenda, definir o tamanho da fonte para toda a legenda e aplicar formatação a uma entrada individual da legenda.
Também aborda vários comportamentos relacionados nas Perguntas Frequentes, incluindo o uso do modo não sobreposição para que a área de plotagem faça espaço para a legenda, permitir que rótulos longos de legenda quebrem em linhas ou usem quebras de linha, e permitir que a formatação da legenda herde do tema da apresentação quando configurações explícitas de texto e preenchimento não são aplicadas.
Posicionamento da legenda
Para definir as propriedades da legenda. Siga as etapas abaixo:
- Crie uma instância da classe Presentation.
- Obtenha a referência do slide.
- Adicione um gráfico ao slide.
- Defina as propriedades da legenda.
- Salve a apresentação como um arquivo PPTX.
No exemplo abaixo, definimos a posição e o tamanho da legenda do gráfico.
// Crie uma instância da classe Presentation
Presentation presentation = new Presentation();
// Obtenha a referência do slide
ISlide slide = presentation.Slides[0];
// Adicione um gráfico de colunas agrupadas no slide
IChart chart = slide.Shapes.AddChart(ChartType.ClusteredColumn, 50, 50, 500, 500);
// Defina as propriedades da legenda
chart.Legend.X = 50 / chart.Width;
chart.Legend.Y = 50 / chart.Height;
chart.Legend.Width = 100 / chart.Width;
chart.Legend.Height = 100 / chart.Height;
// Salve a apresentação no disco
presentation.Save("Legend_out.pptx", SaveFormat.Pptx);
Definir o tamanho da fonte da legenda
O Aspose.Slides for .NET permite que os desenvolvedores definam o tamanho da fonte da legenda. Siga as etapas abaixo:
- Instancie a classe
Presentation. - Crie o gráfico padrão.
- Defina o Tamanho da Fonte.
- Defina o valor mínimo do eixo.
- Defina o valor máximo do eixo.
- Salve a apresentação no disco.
using (Presentation pres = new Presentation("test.pptx"))
{
IChart chart = pres.Slides[0].Shapes.AddChart(Aspose.Slides.Charts.ChartType.ClusteredColumn, 50, 50, 600, 400);
chart.Legend.TextFormat.PortionFormat.FontHeight = 20;
chart.Axes.VerticalAxis.IsAutomaticMinValue = false;
chart.Axes.VerticalAxis.MinValue = -5;
chart.Axes.VerticalAxis.IsAutomaticMaxValue = false;
chart.Axes.VerticalAxis.MaxValue = 10;
pres.Save("output.pptx", SaveFormat.Pptx);
}
Definir o tamanho da fonte de uma legenda individual
O Aspose.Slides for .NET permite que os desenvolvedores definam o tamanho da fonte de entradas individuais da legenda. Siga as etapas abaixo:
- Instancie a classe
Presentation. - Crie o gráfico padrão.
- Acesse a entrada da legenda.
- Defina o Tamanho da Fonte.
- Defina o valor mínimo do eixo.
- Defina o valor máximo do eixo.
- Salve a apresentação no disco.
using (Presentation pres = new Presentation("test.pptx"))
{
IChart chart = pres.Slides[0].Shapes.AddChart(ChartType.ClusteredColumn, 50, 50, 600, 400);
IChartTextFormat tf = chart.Legend.Entries[1].TextFormat;
tf.PortionFormat.FontBold = NullableBool.True;
tf.PortionFormat.FontHeight = 20;
tf.PortionFormat.FontItalic = NullableBool.True;
tf.PortionFormat.FillFormat.FillType = FillType.Solid; ;
tf.PortionFormat.FillFormat.SolidFillColor.Color = Color.Blue;
pres.Save("output.pptx", SaveFormat.Pptx);
}
Perguntas Frequentes
Posso habilitar a legenda para que o gráfico aloque automaticamente espaço para ela em vez de sobrepor?
Sim. Use o modo não sobreposição (Overlay = false); nesse caso, a área de plotagem será reduzida para acomodar a legenda.
Posso criar rótulos de legenda com várias linhas?
Sim. Rótulos longos são quebrados automaticamente quando o espaço é insuficiente; quebras de linha forçadas são suportadas via caracteres de nova linha no nome da série.
Como faço a legenda seguir o esquema de cores do tema da apresentação?
Não defina cores, preenchimentos ou fontes explícitas para a legenda ou seu texto. Eles herdarão do tema e serão atualizados corretamente quando o design mudar.