Adicionando Texto Dinamicamente
Contents
[
Hide
]
Ambos os métodos seguem estas etapas:
- Criar uma apresentação.
- Adicionar um slide em branco.
- Adicionar uma caixa de texto.
- Definir algum texto.
- Salvar a apresentação.
VSTO
private void AddTextBox()
{
//Criar uma apresentação
PowerPoint.Presentation pres = Globals.ThisAddIn.Application
.Presentations.Add(Microsoft.Office.Core.MsoTriState.msoFalse);
//Obter o layout do slide em branco
PowerPoint.CustomLayout layout = pres.SlideMaster.
CustomLayouts[7];
//Adicionar um slide em branco
PowerPoint.Slide sld = pres.Slides.AddSlide(1, layout);
//Adicionar texto
PowerPoint.Shape shp =sld.Shapes.AddTextbox
(Microsoft.Office.Core.MsoTextOrientation.msoTextOrientationHorizontal,150, 100, 400, 100);
//Definir um texto
PowerPoint.TextRange txtRange = shp.TextFrame.TextRange;
txtRange.Text = "Text added dynamically";
txtRange.Font.Name = "Arial";
txtRange.Font.Bold = Microsoft.Office.Core.MsoTriState.msoTrue;
txtRange.Font.Size = 32;
//Gravar a saída no disco
pres.SaveAs("outVSTOAddingText.ppt",
PowerPoint.PpSaveAsFileType.ppSaveAsPresentation,
Microsoft.Office.Core.MsoTriState.msoFalse);
}
Aspose.Slides
static void AddTextBox()
{
//Criar uma apresentação
Presentation pres = new Presentation();
//O slide em branco é adicionado por padrão, quando você cria
//uma apresentação a partir do construtor padrão
//Portanto, não precisamos adicionar nenhum slide em branco
Slide sld = pres.GetSlideByPosition(1);
//Obter o índice da fonte para Arial
//Sempre é 0 se você criar a apresentação a partir do
//construtor padrão
int arialFontIndex = 0;
//Adicionar uma caixa de texto
//Para adicioná-la, primeiro adicionaremos um retângulo
Shape shp = sld.Shapes.AddRectangle(1200, 800, 3200, 370);
//Ocultar sua linha
shp.LineFormat.ShowLines = false;
//Em seguida, adicionar um quadro de texto dentro dele
TextFrame tf = shp.AddTextFrame("");
//Definir um texto
tf.Text = "Text added dynamically";
Portion port = tf.Paragraphs[0].Portions[0];
port.FontIndex = arialFontIndex;
port.FontBold = true;
port.FontHeight = 32;
//Gravar a saída no disco
pres.Write("outAspose.ppt");
}