How to Set Font of Text in PowerPoint

2014-04-18 06:37:08 Written by Koohji

PPT file format is commonly used for office and educational slide shows. With Spire.Presentation, you can generate beautiful and powerful PPT files and edit them without utilizing Microsoft PowerPoint. The PPT files generated are compatible with PowerPoint.

In this document, I will introduce you how to set Font of text in PPT file. First add IAutoShape to the slide. The IAutoShape is a TextBox. You have to add it first. Then add text to the IAutoShape using the method AppendTextFrame. Then you can get the property TextRange of the shape. Using TextRange, you can set Font of text finally.

Step 1: Add the shape to the slide.

IAutoShape shape = presentation.Slides[0].Shapes.AppendShape(ShapeType.Rectangle,
                new RectangleF(50, 70, 400, 50));

Step 2: Add the text to the shape.

shape.AppendTextFrame("This is a demo of text font and color.");

Step 3: Get the property TextRange of the text.

TextRange textRange = shape.TextFrame.TextRange;

Step 4: Set the Font of the text in shape.

textRange.FontHeight = 21;
textRange.IsItalic = TriState.True;
textRange.TextUnderlineType = TextUnderlineType.Single;
textRange.LatinFont = new TextFont("Gulim");

Step 5: Save the document.

presentation.SaveToFile("text.pptx", FileFormat.Pptx2007);

Full code:

using Spire.Presentation;
using System.Drawing;
namespace SetFont
{
    class Program
    {
        static void Main(string[] args)
        {
            //create PPT document
            Presentation presentation = new Presentation();

            //set background Image
            string ImageFile = @"..\..\..\..\..\..\Data\bg.png";
            RectangleF rect = new RectangleF(0, 0, presentation.SlideSize.Size.Width, presentation.SlideSize.Size.Height);
            presentation.Slides[0].Shapes.AppendEmbedImage(ShapeType.Rectangle, ImageFile, rect);
            presentation.Slides[0].Shapes[0].Line.FillFormat.SolidFillColor.Color = Color.FloralWhite;

            //append new shape
            IAutoShape shape = presentation.Slides[0].Shapes.AppendShape(ShapeType.Rectangle,
                new RectangleF(50, 70, 400, 50));

            //set the LineColor
            shape.ShapeStyle.LineColor.Color = Color.Black;

            //set the color and fill style
            shape.Fill.FillType = Spire.Presentation.Drawing.FillFormatType.Solid;
            shape.Fill.SolidColor.Color = Color.LightGray;
            shape.AppendTextFrame("This is a demo of text font and color.");

            //set the color of text in shape
            TextRange textRange = shape.TextFrame.TextRange;
            textRange.Fill.FillType = Spire.Presentation.Drawing.FillFormatType.Solid;
            textRange.Fill.SolidColor.Color = Color.Green;

            //set the Font of text in shape
            textRange.FontHeight = 21;
            textRange.IsItalic = TriState.True;
            textRange.TextUnderlineType = TextUnderlineType.Single;
            textRange.LatinFont = new TextFont("Gulim");

            //save the document
            presentation.SaveToFile("text.pptx", FileFormat.Pptx2007);
            System.Diagnostics.Process.Start("text.pptx");
        }
    }
}

Screenshot:

How to Set Font of Text in PPT

PPT text Alignment can be taken as one kind of text format tools. It allows users to align text with the following styles: Left, Right, Center and Justify. By default, text will be aligned right. Also, users can customize alignment. Below demonstrate the effect by a screenshot which shows the text is corresponding to the alignment, for example, text Left is aligned left and Center is aligned center.

Align Text in PPT Document

Spire.Presentation for .NET, a professional .NET PPT component to allow users to manipulate PPT documents without automation. This guide will introduce a method to align text with C#, VB.NET via Spire.Presentation for .NET.

The method is:

First, new a PPT document, and set its slide. Then, traversal all alignment and use the new paragraph to show them. Last set the font and fill style for added paragraphs.

Download and install Spire.Presentation for .NET and use below code to experience this method to align text in PPT document.

The full code:

[C#]
using System;
using System.Drawing;
using Spire.Presentation;
using Spire.Presentation.Drawing;

namespace Alignment
{
    class Program
    {
        static void Main(string[] args)
        {
            Presentation presentation = new Presentation();


            //set background Image
            string ImageFile = @"bg.png";
            // set the rectangle size and position
            RectangleF rect = new RectangleF(0, 0, presentation.SlideSize.Size.Width, presentation.SlideSize.Size.Height);     
    //set the slide's shapes,background image and rectangle .
            presentation.Slides[0].Shapes.AppendEmbedImage(ShapeType.Rectangle, ImageFile, rect);
            //set the shape's solidFillColor 
            presentation.Slides[0].Shapes[0].Line.FillFormat.SolidFillColor.Color = Color.FloralWhite;

            //append new shape 
            IAutoShape shape = presentation.Slides[0].Shapes.AppendShape(ShapeType.Rectangle, new RectangleF(50, 70, 600, 400));

            shape.TextFrame.Paragraphs[0].Alignment = TextAlignmentType.Left;
            shape.Fill.FillType = FillFormatType.None;
            shape.TextFrame.Text = "Demo about Alignment";

            foreach (TextAlignmentType textAlign in Enum.GetValues(typeof(TextAlignmentType)))
            {
                //create a text range
                TextRange textRange = new TextRange(textAlign.ToString());

                //create a new paragraph
                TextParagraph paragraph = new TextParagraph();

                //apend the text range
                paragraph.TextRanges.Append(textRange);

                //set the alignment
                paragraph.Alignment = textAlign;

                //append to shape

                shape.TextFrame.Paragraphs.Append(paragraph);
            }


            //set the font and fill style
            foreach (TextParagraph paragraph in shape.TextFrame.Paragraphs)
            {
                paragraph.TextRanges[0].LatinFont = new TextFont("Arial Black");
                paragraph.TextRanges[0].Fill.FillType = FillFormatType.Solid;
                paragraph.TextRanges[0].Fill.SolidColor.Color = Color.Black;
            }

            //save the document
            presentation.SaveToFile("alignment.pptx", FileFormat.Pptx2010);
            System.Diagnostics.Process.Start("alignment.pptx");
        }
    }
}
[VB.NET]
Imports System.Text
Imports System.Drawing
Imports Spire.Presentation
Imports Spire.Presentation.Drawing

Public Class Form1

    Private Sub btnRun_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnRun.Click

        'create PPT document
        Dim presentation As New Presentation()

        'set background Image
        Dim ImageFile As String = "bg.png"
        Dim rect As New RectangleF(0, 0, presentation.SlideSize.Size.Width, presentation.SlideSize.Size.Height)
        presentation.Slides(0).Shapes.AppendEmbedImage(ShapeType.Rectangle, ImageFile, rect)
        presentation.Slides(0).Shapes(0).Line.FillFormat.SolidFillColor.Color = Color.FloralWhite

        'append new shape
        Dim shape As IAutoShape = presentation.Slides(0).Shapes.AppendShape(ShapeType.Rectangle, New RectangleF(50, 70, 350, 200))
        shape.TextFrame.Paragraphs(0).Alignment = TextAlignmentType.Left
        shape.Fill.FillType = FillFormatType.None
        shape.TextFrame.Text = "Demo about Alignment"

        For Each textAlign As TextAlignmentType In [Enum].GetValues(GetType(TextAlignmentType))
            'create a text range
            Dim textRange As New TextRange(textAlign.ToString())

            'create a new paragraph
            Dim paragraph As New TextParagraph()

            'apend the text range
            paragraph.TextRanges.Append(textRange)

            'set the alignment
            paragraph.Alignment = textAlign

            'append to shape
            shape.TextFrame.Paragraphs.Append(paragraph)
        Next


        'set the font and fill style
        For Each paragraph As TextParagraph In shape.TextFrame.Paragraphs
            paragraph.TextRanges(0).LatinFont = New TextFont("Arial Black")
            paragraph.TextRanges(0).Fill.FillType = FillFormatType.Solid
            paragraph.TextRanges(0).Fill.SolidColor.Color = Color.Black
        Next

        'save the document
        presentation.SaveToFile("alignment.pptx", FileFormat.Pptx2010)
        System.Diagnostics.Process.Start("alignment.pptx")

    End Sub
End Class

Spire.Presentation Quick Start

2014-04-16 02:10:15 Written by Koohji

In this document, we will quickly help you finish a simple demo about Spire.Presentation using Visual Studio. As usual, it's a HelloWorld demo. Before you get started, please make sure the Spire.Presentation and Visual Studio (2005 or later) are installed on your computer.

1. In Visual Studio, click, File, New, and then Project. If you want to create a C# project, select Visual C#, Windows and choose Windows Forms Application and name the project HelloWorld. Click OK. If you want to create a Visual Basic project, select Visual Basic, Windows Forms Application and name the project HelloWorld. Click OK.

2. In Solution Explorer, right-click the project HelloWorld and click Add Reference. In the Browse tab, find the folder which you installed the Spire.Presentation in, default is "C:\ProgramFiles\e-iceblue\ Spire.Presentation", double-click the folder Bin. If the target framework of the project HelloWorld

  • is .NET 2.0, double-click folder NET2.0
  • is .NET 3.5, double-click folder NET3.5
  • is .NET 4.0, double-click folder NET4.0

Select assembly Spire.Presentation.dll and click OK to add it to the project.

3. In Solution Explorer, double-click the file Form1.cs/Form1.vb to open the form design view, add a button into the form, and change its name to 'btnRun', change its text to 'Run'.

4. Double-click the button 'Run', you will see the code view and the following method has been added automatically:

[C#]
private void btnRun_Click(object sender, EventArgs e)
[VB.NET]
Private Sub btnRun_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnRun.Click

5. Add the following codes to the top of the file:

[C#]
using  Spire.Presentation;
using  Spire.Presentation.Drawing;
[VB.NET]
Imports  Spire.Presentation
Imports  Spire.Presentation.Drawing

6. Add the following codes to the method btnRun_Click

[C#]
//create PPT document
Presentation  presentation = new Presentation();  
//add new shape to PPT document           
IAutoShape shape = presentation.Slides[0].Shapes.AppendShape(ShapeType.Rectangle,
					new RectangleF(0, 50, 200, 50));
shape.ShapeStyle.LineColor.Color = Color.White;
shape.Fill.FillType = Spire.Presentation.Drawing.FillFormatType.None;  
//add text to shape
shape.AppendTextFrame("Hello World!");   
//set the Font fill style of text  
TextRange textRange = shape.TextFrame.TextRange;
textRange.Fill.FillType = Presentation.Drawing.FillFormatType.Solid;
textRange.Fill.SolidColor.Color = Color.Black;  
textRange.LatinFont = new TextFont("Arial Black");  
//save the document
presentation.SaveToFile("hello.pptx", FileFormat.Pptx2010);
System.Diagnostics.Process.Start("hello.pptx");
[VB.NET]
'create PPT document  
Dim presentation As New Presentation()   
'add new shape to PPT document
Dim shape As IAutoShape = presentation.Slides(0).Shapes.AppendShape(ShapeType.Rectangle, New RectangleF(0, 50, 200, 50)    
shape.ShapeStyle.LineColor.Color = Color.White
shape.Fill.FillType = Spire.Presentation.Drawing.FillFormatType.None  
'add text to shape  
shape.AppendTextFrame("Hello World!")  
'set the Font fill style of text
Dim textRange As TextRange = shape.TextFrame.TextRange
textRange.Fill.FillType =  Spire.Presentation.Drawing.FillFormatType.Solid
textRange.Fill.SolidColor.Color = Color.Black
textRange.LatinFont = New TextFont("Arial Black")  
'save the document
presentation.SaveToFile("hello.pptx", FileFormat.Pptx2010)
System.Diagnostics.Process.Start("hello.pptx")

7. In Solution Explorer, right-click the project HelloWorld and click Debug, then Start new instance, you will see the opened window Form1, click the button 'Run', a PPT document will be created, edited and opened. The string "Hello, World" is filled in the first page.

The following screenshot is result of the project ran:

Spire.Presentation Quick Start

page 270